[gnome-disk-utility/wip/christopherdavis/use-libhandy: 2/5] window: Make adaptive with HdyLeaflet




commit fee147b80ee913fb7f738e7a71e5fc1ce1bfab1b
Author: Christopher Davis <brainblasted disroot org>
Date:   Wed Sep 16 18:51:26 2020 -0700

    window: Make adaptive with HdyLeaflet
    
    Makes the main window adaptive and swipeable
    via HdyLeaflet.
    
    Fixes https://gitlab.gnome.org/GNOME/gnome-disk-utility/-/issues/178, 
https://gitlab.gnome.org/GNOME/gnome-disk-utility/-/issues/169, 
https://gitlab.gnome.org/GNOME/gnome-disk-utility/-/issues/148, and 
https://gitlab.gnome.org/GNOME/gnome-disk-utility/-/issues/124

 flatpak/org.gnome.DiskUtility.json  |   10 +
 meson.build                         |    1 +
 po/POTFILES.in                      |    1 -
 src/disks/gduapplication.c          |    2 +
 src/disks/gduwindow.c               |  144 +--
 src/disks/gduwindow.h               |    1 +
 src/disks/gnome-disks.gresource.xml |    1 -
 src/disks/meson.build               |    1 +
 src/disks/ui/disks.ui               | 1938 +++++++++++++++++++----------------
 src/disks/ui/headerbar.ui           |   95 --
 10 files changed, 1130 insertions(+), 1064 deletions(-)
---
diff --git a/flatpak/org.gnome.DiskUtility.json b/flatpak/org.gnome.DiskUtility.json
index 16a20deb..f862bde3 100644
--- a/flatpak/org.gnome.DiskUtility.json
+++ b/flatpak/org.gnome.DiskUtility.json
@@ -276,6 +276,16 @@
                 }
             ]
         },
+        {
+            "name" : "libhandy",
+            "buildsystem": "meson",
+            "sources" : [
+                {
+                    "type" : "git",
+                    "url" : "https://gitlab.gnome.org/GNOME/libhandy.git";
+                }
+            ]
+        },
         {
             "name" : "udisks2",
             "buildsystem" : "autotools",
diff --git a/meson.build b/meson.build
index fd066878..082fcd3a 100644
--- a/meson.build
+++ b/meson.build
@@ -73,6 +73,7 @@ gio_unix_dep = dependency('gio-unix-2.0', version: '>= 2.31.0')
 gmodule_dep = dependency('gmodule-2.0')
 gtk_dep = dependency('gtk+-3.0', version: '>= 3.16.0')
 libcanberra_dep = dependency('libcanberra-gtk3', version: '>= 0.1')
+libhandy_dep = dependency('libhandy-1', version: '>= 1.0.0')
 liblzma_dep = dependency('liblzma', version: '>= 5.0.5')
 libnotify_dep = dependency('libnotify', version: '>= 0.7')
 libsecret_dep = dependency('libsecret-1', version: '>= 0.7')
diff --git a/po/POTFILES.in b/po/POTFILES.in
index af903a14..d267f514 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -56,7 +56,6 @@ src/disks/ui/edit-gpt-partition-dialog.ui
 src/disks/ui/edit-partition-dialog.ui
 src/disks/ui/erase-multiple-disks-dialog.ui
 src/disks/ui/format-disk-dialog.ui
-src/disks/ui/headerbar.ui
 src/disks/ui/new-disk-image-dialog.ui
 src/disks/ui/resize-dialog.ui
 src/disks/ui/restore-disk-image-dialog.ui
diff --git a/src/disks/gduapplication.c b/src/disks/gduapplication.c
index b904ac72..3992ed66 100644
--- a/src/disks/gduapplication.c
+++ b/src/disks/gduapplication.c
@@ -429,6 +429,8 @@ gdu_application_startup (GApplication *_app)
   if (G_APPLICATION_CLASS (gdu_application_parent_class)->startup != NULL)
     G_APPLICATION_CLASS (gdu_application_parent_class)->startup (_app);
 
+  hdy_init ();
+
   g_action_map_add_action_entries (G_ACTION_MAP (app), app_entries, G_N_ELEMENTS (app_entries), app);
 
   for (it = action_accels; it[0] != NULL; it += g_strv_length ((gchar **)it) + 1)
diff --git a/src/disks/gduwindow.c b/src/disks/gduwindow.c
index 70e8f6d2..8b567a62 100644
--- a/src/disks/gduwindow.c
+++ b/src/disks/gduwindow.c
@@ -43,7 +43,7 @@
 
 struct _GduWindow
 {
-  GtkApplicationWindow parent_instance;
+  HdyApplicationWindow parent_instance;
 
   GduApplication *application;
   UDisksClient *client;
@@ -69,12 +69,11 @@ struct _GduWindow
   GtkWidget *toolbutton_activate_swap;
   GtkWidget *toolbutton_deactivate_swap;
 
-  GtkWidget *header;
   GtkWidget *right_header;
   GtkWidget *left_header;
 
   GtkWidget *main_box;
-  GtkWidget *main_hpane;
+  GtkWidget *main_leaflet;
   GtkWidget *details_notebook;
   GtkWidget *device_tree_scrolledwindow;
   GtkWidget *device_tree_treeview;
@@ -131,7 +130,7 @@ static const struct {
   {G_STRUCT_OFFSET (GduWindow, toolbutton_deactivate_swap), "toolbutton-deactivate-swap"},
 
   {G_STRUCT_OFFSET (GduWindow, main_box), "main-box"},
-  {G_STRUCT_OFFSET (GduWindow, main_hpane), "main-hpane"},
+  {G_STRUCT_OFFSET (GduWindow, main_leaflet), "main-leaflet"},
   {G_STRUCT_OFFSET (GduWindow, device_tree_scrolledwindow), "device-tree-scrolledwindow"},
 
   {G_STRUCT_OFFSET (GduWindow, device_tree_treeview), "device-tree-treeview"},
@@ -166,7 +165,7 @@ static const struct {
 
 typedef struct
 {
-  GtkApplicationWindowClass parent_class;
+  HdyApplicationWindowClass parent_class;
 } GduWindowClass;
 
 enum
@@ -253,6 +252,7 @@ static void on_devtab_drive_loop_detach_button_clicked (GtkButton *button, gpoin
 static void on_devtab_drive_eject_button_clicked (GtkButton *button, gpointer user_data);
 static void on_devtab_drive_power_off_button_clicked (GtkButton *button, gpointer user_data);
 
+static void on_go_back (GSimpleAction *action, GVariant *parameter, gpointer user_data);
 static void on_drive_menu_open (GSimpleAction *action, GVariant *parameter, gpointer user_data);
 static void on_volume_menu_open (GSimpleAction *action, GVariant *parameter, gpointer user_data);
 
@@ -333,13 +333,16 @@ static void on_drive_job_cancel_button_clicked (GtkButton *button,
 static void on_job_cancel_button_clicked (GtkButton     *button,
                                           gpointer       user_data);
 
+static void on_leaflet_visible_child_notify (GduWindow *window);
+
 static gboolean on_activate_link (GtkLabel    *label,
                                   const gchar *uri,
                                   gpointer     user_data);
 
-G_DEFINE_TYPE (GduWindow, gdu_window, GTK_TYPE_APPLICATION_WINDOW);
+G_DEFINE_TYPE (GduWindow, gdu_window, HDY_TYPE_APPLICATION_WINDOW);
 
 static const GActionEntry actions[] = {
+       { "go-back", on_go_back },
        { "open-drive-menu", on_drive_menu_open },
        { "open-volume-menu", on_volume_menu_open },
 
@@ -577,35 +580,6 @@ select_object (GduWindow    *window,
   return ret;
 }
 
-static gboolean
-ensure_something_selected_foreach_cb (GtkTreeModel  *model,
-                                      GtkTreePath   *path,
-                                      GtkTreeIter   *iter,
-                                      gpointer       user_data)
-{
-  UDisksObject **object = user_data;
-  gtk_tree_model_get (model, iter,
-                      GDU_DEVICE_TREE_MODEL_COLUMN_OBJECT, object,
-                      -1);
-  if (*object != NULL)
-    return TRUE;
-  return FALSE;
-}
-
-static void
-ensure_something_selected (GduWindow *window)
-{
-  UDisksObject *object = NULL;
-  gtk_tree_model_foreach (GTK_TREE_MODEL (window->model),
-                          ensure_something_selected_foreach_cb,
-                          &object);
-  if (object != NULL)
-    {
-      select_object (window, object);
-      g_object_unref (object);
-    }
-}
-
 static void
 on_tree_selection_changed (GtkTreeSelection *tree_selection,
                            gpointer          user_data)
@@ -624,11 +598,12 @@ on_tree_selection_changed (GtkTreeSelection *tree_selection,
                           -1);
       select_object (window, object);
       g_object_unref (object);
+      hdy_leaflet_navigate (HDY_LEAFLET (window->main_leaflet),
+                            HDY_NAVIGATION_DIRECTION_FORWARD);
     }
   else
     {
       select_object (window, NULL);
-      ensure_something_selected (window);
     }
 }
 
@@ -1010,17 +985,13 @@ power_state_cell_func (GtkTreeViewColumn *column,
   update_all (window, FALSE);
 }
 
-static GtkWidget *
+static void
 create_header (GduWindow *window)
 {
-  GtkWidget *header;
   GMenuModel *model;
   GError **error0 = NULL;
   GError **error1 = NULL;
-  GError **error2 = NULL;
 
-  gtk_builder_add_from_resource (window->builder, "/org/gnome/Disks/ui/headerbar.ui", error0);
-  header = GTK_WIDGET (gtk_builder_get_object (window->builder, "headerbar-paned"));
   window->right_header = GTK_WIDGET (gtk_builder_get_object (window->builder, "disks-main-headerbar"));
   window->left_header = GTK_WIDGET (gtk_builder_get_object (window->builder, "disks-side-headerbar"));
 
@@ -1030,17 +1001,15 @@ create_header (GduWindow *window)
   window->devtab_drive_eject_button = GTK_WIDGET (gtk_builder_get_object (window->builder, 
"eject-disk-button"));
   window->devtab_drive_loop_detach_button = GTK_WIDGET (gtk_builder_get_object (window->builder, 
"detach-loop-device-button"));
 
-  gtk_builder_add_from_resource (window->builder, "/org/gnome/Disks/ui/drive-menu.ui", error1);
+  gtk_builder_add_from_resource (window->builder, "/org/gnome/Disks/ui/drive-menu.ui", error0);
   model = G_MENU_MODEL (gtk_builder_get_object (window->builder, "drive-menu"));
   window->drive_menu = gtk_popover_new_from_model (window->devtab_drive_menu_button, model);
   gtk_menu_button_set_popover (GTK_MENU_BUTTON (window->devtab_drive_menu_button), window->drive_menu);
 
-  gtk_builder_add_from_resource (window->builder, "/org/gnome/Disks/ui/app-menu.ui", error2);
+  gtk_builder_add_from_resource (window->builder, "/org/gnome/Disks/ui/app-menu.ui", error1);
   model = G_MENU_MODEL (gtk_builder_get_object (window->builder, "app-menu"));
   window->app_menu = gtk_popover_new_from_model (window->devtab_app_menu_button, model);
   gtk_menu_button_set_popover (GTK_MENU_BUTTON (window->devtab_app_menu_button), window->app_menu);
-
-  return header;
 }
 
 static void
@@ -1061,8 +1030,8 @@ gdu_window_update_decoration_layout (GObject     *object,
       gchar *layout_headerbar;
 
       layout_headerbar = g_strdup_printf ("%c%s", ':', tokens[1]);
-      gtk_header_bar_set_decoration_layout (GTK_HEADER_BAR (window->right_header), layout_headerbar);
-      gtk_header_bar_set_decoration_layout (GTK_HEADER_BAR (window->left_header), tokens[0]);
+      hdy_header_bar_set_decoration_layout (HDY_HEADER_BAR (window->right_header), layout_headerbar);
+      hdy_header_bar_set_decoration_layout (HDY_HEADER_BAR (window->left_header), tokens[0]);
 
       g_free (layout_headerbar);
       g_strfreev (tokens);
@@ -1113,14 +1082,10 @@ gdu_window_constructed (GObject *object)
   g_object_unref (window->main_box);
 
   /* build the headerbar */
-  window->header = create_header (window);
-  gtk_window_set_titlebar (GTK_WINDOW (window), window->header);
-
-  gtk_widget_show_all (window->header);
+  create_header (window);
 
-  g_object_bind_property (window->header,     "position",
-                          window->main_hpane, "position",
-                          G_BINDING_BIDIRECTIONAL | G_BINDING_SYNC_CREATE);
+  gtk_widget_show_all (window->left_header);
+  gtk_widget_show_all (window->right_header);
 
   gtk_window_set_title (GTK_WINDOW (window), _("Disks"));
   gtk_window_set_default_size (GTK_WINDOW (window), 900, 600);
@@ -1353,6 +1318,18 @@ gdu_window_constructed (GObject *object)
                     G_CALLBACK (on_job_cancel_button_clicked),
                     window);
 
+  /* Connect the leaflet for swiping */
+  g_signal_connect_object (window->main_leaflet,
+                           "notify::visible-child",
+                           G_CALLBACK (on_leaflet_visible_child_notify),
+                           window,
+                           G_CONNECT_SWAPPED);
+  g_signal_connect_object (window->main_leaflet,
+                           "notify::child-transition-running",
+                           G_CALLBACK (on_leaflet_visible_child_notify),
+                           window,
+                           G_CONNECT_SWAPPED);
+
   /* GtkLabel instances we need to handle ::activate-link for */
   g_signal_connect (window->devtab_volume_type_value_label,
                     "activate-link",
@@ -1364,7 +1341,6 @@ gdu_window_constructed (GObject *object)
                     G_CALLBACK (on_delete_event),
                     NULL);
 
-  ensure_something_selected (window);
   gtk_widget_grab_focus (window->device_tree_treeview);
   update_all (window, FALSE);
 }
@@ -1603,6 +1579,7 @@ block_compare_on_preferred (UDisksObject *a,
 
 /* ---------------------------------------------------------------------------------------------------- */
 
+static void update_empty_page (GduWindow *window);
 static void update_device_page (GduWindow *window, ShowFlags *show_flags, gboolean is_delayed_job_update);
 
 /* Keep in sync with tabs in disks.ui file */
@@ -1642,7 +1619,7 @@ update_all (GduWindow *window, gboolean is_delayed_job_update)
   switch (page)
     {
     case DETAILS_PAGE_NOT_SELECTED:
-      /* Nothing to update */
+      update_empty_page (window);
       break;
 
     case DETAILS_PAGE_NOT_IMPLEMENTED:
@@ -2072,8 +2049,8 @@ update_device_page_for_drive (GduWindow      *window,
       g_free (s);
     }
 
-  gtk_header_bar_set_title (GTK_HEADER_BAR (window->right_header), udisks_object_info_get_description 
(info));
-  gtk_header_bar_set_subtitle (GTK_HEADER_BAR (window->right_header), str->str);
+  hdy_header_bar_set_title (HDY_HEADER_BAR (window->right_header), udisks_object_info_get_description 
(info));
+  hdy_header_bar_set_subtitle (HDY_HEADER_BAR (window->right_header), str->str);
 
   g_string_free (str, TRUE);
 
@@ -2288,8 +2265,8 @@ update_device_page_for_loop (GduWindow      *window,
   info = udisks_client_get_object_info (window->client, object);
   device_desc = get_device_file_for_display (block);
 
-  gtk_header_bar_set_title (GTK_HEADER_BAR (window->right_header), udisks_object_info_get_description 
(info));
-  gtk_header_bar_set_subtitle (GTK_HEADER_BAR (window->right_header), device_desc);
+  hdy_header_bar_set_title (HDY_HEADER_BAR (window->right_header), udisks_object_info_get_description 
(info));
+  hdy_header_bar_set_subtitle (HDY_HEADER_BAR (window->right_header), device_desc);
 
   gtk_widget_show (window->devtab_drive_menu_button);
 
@@ -2344,8 +2321,8 @@ update_device_page_for_fake_block (GduWindow      *window,
   info = udisks_client_get_object_info (window->client, object);
   device_desc = get_device_file_for_display (block);
 
-  gtk_header_bar_set_title (GTK_HEADER_BAR (window->right_header), udisks_object_info_get_description 
(info));
-  gtk_header_bar_set_subtitle (GTK_HEADER_BAR (window->right_header), device_desc);
+  hdy_header_bar_set_title (HDY_HEADER_BAR (window->right_header), udisks_object_info_get_description 
(info));
+  hdy_header_bar_set_subtitle (HDY_HEADER_BAR (window->right_header), device_desc);
 
   gtk_widget_show (window->devtab_drive_menu_button);
 
@@ -2858,6 +2835,14 @@ maybe_hide (GtkWidget *widget,
     }
 }
 
+static void
+update_empty_page (GduWindow *window)
+{
+  hdy_header_bar_set_title (HDY_HEADER_BAR (window->right_header), NULL);
+  hdy_header_bar_set_subtitle (HDY_HEADER_BAR (window->right_header), NULL);
+  gtk_widget_hide (window->devtab_drive_menu_button);
+}
+
 static void
 update_device_page (GduWindow      *window,
                     ShowFlags      *show_flags,
@@ -3226,6 +3211,21 @@ on_drive_menu_open (GSimpleAction *action,
 
 /* ---------------------------------------------------------------------------------------------------- */
 
+static void
+on_go_back (GSimpleAction *action,
+            GVariant      *parameter,
+            gpointer       user_data)
+{
+  GduWindow *window = GDU_WINDOW (user_data);
+
+  if (hdy_leaflet_get_adjacent_child (HDY_LEAFLET (window->main_leaflet), HDY_NAVIGATION_DIRECTION_BACK) != 
NULL)
+    {
+      hdy_leaflet_navigate (HDY_LEAFLET (window->main_leaflet), HDY_NAVIGATION_DIRECTION_BACK);
+    }
+}
+
+/* ---------------------------------------------------------------------------------------------------- */
+
 static void
 on_volume_menu_item_edit_label (GSimpleAction *action,
                                 GVariant      *parameter,
@@ -4128,6 +4128,26 @@ on_job_cancel_button_clicked (GtkButton    *button,
   g_list_free (jobs);
 }
 
+/* ---------------------------------------------------------------------------------------------------- */
+
+static void
+on_leaflet_visible_child_notify (GduWindow *window)
+{
+  HdyLeaflet *leaflet = HDY_LEAFLET (window->main_leaflet);
+  const gchar *child_name = hdy_leaflet_get_visible_child_name (leaflet);
+  GtkTreeSelection *selection;
+
+  if (hdy_leaflet_get_child_transition_running (leaflet) ||
+      !g_str_equal (child_name, "sidebar"))
+    {
+      return;
+    }
+
+  selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (window->device_tree_treeview));
+  gtk_tree_selection_unselect_all (selection);
+}
+
+
 /* ---------------------------------------------------------------------------------------------------- */
 
 static gboolean
diff --git a/src/disks/gduwindow.h b/src/disks/gduwindow.h
index 53c54085..5e5473c7 100644
--- a/src/disks/gduwindow.h
+++ b/src/disks/gduwindow.h
@@ -11,6 +11,7 @@
 #define __GDU_WINDOW_H__
 
 #include <gtk/gtk.h>
+#include "handy.h"
 #include "gdutypes.h"
 
 G_BEGIN_DECLS
diff --git a/src/disks/gnome-disks.gresource.xml b/src/disks/gnome-disks.gresource.xml
index d9542c17..5ce8a3e9 100644
--- a/src/disks/gnome-disks.gresource.xml
+++ b/src/disks/gnome-disks.gresource.xml
@@ -23,7 +23,6 @@
     <file preprocess="xml-stripblanks">ui/edit-partition-dialog.ui</file>
     <file preprocess="xml-stripblanks">ui/erase-multiple-disks-dialog.ui</file>
     <file preprocess="xml-stripblanks">ui/format-disk-dialog.ui</file>
-    <file preprocess="xml-stripblanks">ui/headerbar.ui</file>
     <file preprocess="xml-stripblanks">ui/new-disk-image-dialog.ui</file>
     <file preprocess="xml-stripblanks">ui/resize-dialog.ui</file>
     <file preprocess="xml-stripblanks">ui/restore-disk-image-dialog.ui</file>
diff --git a/src/disks/meson.build b/src/disks/meson.build
index aa308ddd..35b2f103 100644
--- a/src/disks/meson.build
+++ b/src/disks/meson.build
@@ -87,6 +87,7 @@ deps = [
   gmodule_dep,
   libcanberra_dep,
   libgdu_dep,
+  libhandy_dep,
   liblzma_dep,
   libsecret_dep,
   m_dep,
diff --git a/src/disks/ui/disks.ui b/src/disks/ui/disks.ui
index 627ec095..5920a64b 100644
--- a/src/disks/ui/disks.ui
+++ b/src/disks/ui/disks.ui
@@ -2,7 +2,7 @@
 <!-- Generated with glade 3.16.0 on Sat Jan 18 15:34:43 2014 -->
 <interface>
   <!-- interface-requires gtk+ 3.10 -->
-  <object class="GtkWindow" id="disks-window">
+  <object class="HdyApplicationWindow" id="disks-window">
     <property name="can_focus">False</property>
     <property name="border_width">12</property>
     <property name="default_width">400</property>
@@ -13,1153 +13,1275 @@
         <property name="can_focus">False</property>
         <property name="orientation">vertical</property>
         <child>
-          <object class="GtkPaned" id="main-hpane">
+          <object class="HdyLeaflet" id="main-leaflet">
             <property name="visible">True</property>
-            <property name="can_focus">True</property>
-            <property name="orientation">horizontal</property>
-            <property name="position">200</property>
-            <property name="position_set">True</property>
+            <property name="can_focus">False</property>
+            <property name="can_swipe_back">True</property>
+            <property name="width_request">360</property>
             <child>
-              <object class="GtkScrolledWindow" id="device-tree-scrolledwindow">
+              <object class="GtkBox">
                 <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="hscrollbar_policy">never</property>
-                <property name="min_content_width">0</property>
+                <property name="orientation">vertical</property>
                 <child>
-                  <object class="GtkTreeView" id="device-tree-treeview">
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="headers_visible">False</property>
-                    <property name="show_expanders">False</property>
-                    <property name="level_indentation">12</property>
-                    <child internal-child="selection">
-                      <object class="GtkTreeSelection" id="treeview-selection1"/>
-                    </child>
-                  </object>
-                </child>
-              </object>
-              <packing>
-                <property name="resize">False</property>
-                <property name="shrink">True</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkNotebook" id="disks-notebook">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="margin_left">6</property>
-                <property name="margin_right">12</property>
-                <property name="margin_top">6</property>
-                <property name="margin_bottom">12</property>
-                <property name="hexpand">True</property>
-                <child>
-                  <object class="GtkAlignment" id="alignment1">
-                    <property name="visible">True</property>
+                  <object class="HdyHeaderBar" id="disks-side-headerbar">
                     <property name="can_focus">False</property>
+                    <property name="title" translatable="yes">Disks</property>
+                    <property name="show-close-button">True</property>
                     <child>
-                      <object class="GtkLabel" id="label4">
+                      <object class="GtkMenuButton" id="app-menu-button">
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="label" translatable="yes">Select a device</property>
+                        <property name="direction">none</property>
                       </object>
+                      <packing>
+                        <property name="pack-type">end</property>
+                      </packing>
                     </child>
                   </object>
                 </child>
-                <child type="tab">
-                  <object class="GtkLabel" id="label3">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="label">nothing_selected</property>
-                  </object>
-                  <packing>
-                    <property name="tab_fill">False</property>
-                  </packing>
-                </child>
                 <child>
-                  <object class="GtkAlignment" id="alignment1x">
+                  <object class="GtkScrolledWindow" id="device-tree-scrolledwindow">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
+                    <property name="vexpand">True</property>
+                    <property name="hscrollbar_policy">never</property>
+                    <property name="min_content_width">0</property>
+                    <property name="width_request">200</property>
                     <child>
-                      <object class="GtkLabel" id="label4x">
+                      <object class="GtkTreeView" id="device-tree-treeview">
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="label">Page not implemented yet</property>
+                        <property name="can_focus">True</property>
+                        <property name="headers_visible">False</property>
+                        <property name="show_expanders">False</property>
+                        <property name="level_indentation">12</property>
+                        <child internal-child="selection">
+                          <object class="GtkTreeSelection" id="treeview-selection1"/>
+                        </child>
                       </object>
                     </child>
                   </object>
-                  <packing>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-                <child type="tab">
-                  <object class="GtkLabel" id="label3x">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="label">not_implemented</property>
-                  </object>
-                  <packing>
-                    <property name="position">1</property>
-                    <property name="tab_fill">False</property>
-                  </packing>
                 </child>
+              </object>
+              <packing>
+                <property name="name">sidebar</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkSeparator">
+                <property name="visible">True</property>
+                <property name="orientation">vertical</property>
+                <style>
+                  <class name="sidebar"/>
+                </style>
+              </object>
+              <packing>
+                <property name="navigatable">False</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkBox">
+                <property name="visible">True</property>
+                <property name="orientation">vertical</property>
                 <child>
-                  <object class="GtkVBox" id="vbox1">
-                    <property name="visible">True</property>
+                  <object class="HdyHeaderBar" id="disks-main-headerbar">
                     <property name="can_focus">False</property>
-                    <property name="spacing">12</property>
+                    <property name="show-close-button">True</property>
                     <child>
-                      <object class="GtkTable" id="devtab-drive-table">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="n_rows">12</property>
-                        <property name="n_columns">2</property>
-                        <property name="column_spacing">10</property>
+                      <object class="GtkButton" id="disks-back-button">
+                        <property name="visible" bind-source="main-leaflet" bind-property="folded" 
bind-flags="sync-create"/>
+                        <property name="no_show_all">True</property>
+                        <property name="action_name">win.go-back</property>
+                        <property name="tooltip-text" translatable="yes">Go back to main view</property>
                         <child>
-                          <object class="GtkLabel" id="devtab-drive-model-label">
+                          <object class="GtkImage">
                             <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes">Model</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
+                            <property name="icon-name">go-previous-symbolic</property>
                           </object>
-                          <packing>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-model-value-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="xalign">0</property>
-                            <property name="selectable">True</property>
-                            <property name="ellipsize">end</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-serial-number-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes">Serial Number</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
-                          </object>
-                          <packing>
-                            <property name="top_attach">7</property>
-                            <property name="bottom_attach">8</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-serial-number-value-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="xalign">0</property>
-                            <property name="selectable">True</property>
-                            <property name="ellipsize">end</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">7</property>
-                            <property name="bottom_attach">8</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-wwn-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes">World Wide Name</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
-                          </object>
-                          <packing>
-                            <property name="top_attach">8</property>
-                            <property name="bottom_attach">9</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-wwn-value-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="xalign">0</property>
-                            <property name="selectable">True</property>
-                            <property name="ellipsize">end</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">8</property>
-                            <property name="bottom_attach">9</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
                         </child>
+                      </object>
+                      <packing>
+                        <property name="pack-type">start</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkMenuButton" id="drive-menu-button">
+                        <property name="visible">True</property>
+                        <property name="tooltip-text" translatable="yes">Drive Options</property>
                         <child>
-                          <object class="GtkLabel" id="devtab-drive-location-label">
+                          <object class="GtkImage">
                             <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes" comments="The physical location of the 
drive, could be 'Connected to another seat'  or 'Bay 11 of Promise VTrak' or 'USB connector 
II'">Location</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
+                            <property name="icon-name">view-more-symbolic</property>
                           </object>
-                          <packing>
-                            <property name="top_attach">9</property>
-                            <property name="bottom_attach">10</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
                         </child>
+                      </object>
+                      <packing>
+                        <property name="pack-type">end</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="power-off-disk-button">
+                        <property name="visible">True</property>
+                        <property name="tooltip-text" translatable="yes">Power off this disk</property>
                         <child>
-                          <object class="GtkLabel" id="devtab-drive-location-value-label">
+                          <object class="GtkImage">
                             <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="xalign">0</property>
-                            <property name="selectable">True</property>
-                            <property name="ellipsize">end</property>
+                            <property name="icon-name">system-shutdown-symbolic</property>
                           </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">9</property>
-                            <property name="bottom_attach">10</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
                         </child>
+                      </object>
+                      <packing>
+                        <property name="pack-type">end</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="eject-disk-button">
+                        <property name="visible">True</property>
+                        <property name="tooltip-text" translatable="yes">Eject this disk</property>
                         <child>
-                          <object class="GtkLabel" id="devtab-drive-media-label">
+                          <object class="GtkImage">
                             <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes">Media</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
+                            <property name="icon-name">media-eject-symbolic</property>
                           </object>
-                          <packing>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-media-value-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="xalign">0</property>
-                            <property name="selectable">True</property>
-                            <property name="ellipsize">end</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
                         </child>
+                      </object>
+                      <packing>
+                        <property name="pack-type">end</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="detach-loop-device-button">
+                        <property name="visible">True</property>
+                        <property name="tooltip-text" translatable="yes">Detach this loop device</property>
                         <child>
-                          <object class="GtkLabel" id="devtab-drive-smart-label">
+                          <object class="GtkImage">
                             <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes">Assessment</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
+                            <property name="icon-name">list-remove-symbolic</property>
                           </object>
-                          <packing>
-                            <property name="top_attach">10</property>
-                            <property name="bottom_attach">11</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
                         </child>
+                      </object>
+                      <packing>
+                        <property name="pack-type">end</property>
+                      </packing>
+                    </child>
+                  </object>
+                </child>
+                <child>
+                  <object class="GtkNotebook" id="disks-notebook">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="margin_left">6</property>
+                    <property name="margin_right">12</property>
+                    <property name="margin_top">6</property>
+                    <property name="margin_bottom">12</property>
+                    <property name="hexpand">True</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment1">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
                         <child>
-                          <object class="GtkLabel" id="devtab-drive-smart-value-label">
+                          <object class="GtkLabel" id="label4">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="xalign">0</property>
-                            <property name="selectable">True</property>
-                            <property name="ellipsize">end</property>
+                            <property name="label" translatable="yes">Select a device</property>
                           </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">10</property>
-                            <property name="bottom_attach">11</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
                         </child>
+                      </object>
+                    </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="label3">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label">nothing_selected</property>
+                      </object>
+                      <packing>
+                        <property name="tab_fill">False</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkAlignment" id="alignment1x">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
                         <child>
-                          <object class="GtkLabel" id="devtab-drive-job-label">
+                          <object class="GtkLabel" id="label4x">
                             <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">Job</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
+                            <property name="label">Page not implemented yet</property>
                           </object>
-                          <packing>
-                            <property name="top_attach">11</property>
-                            <property name="bottom_attach">12</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options">GTK_FILL</property>
-                            <property name="y_padding">4</property>
-                          </packing>
                         </child>
+                      </object>
+                      <packing>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="label3x">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label">not_implemented</property>
+                      </object>
+                      <packing>
+                        <property name="position">1</property>
+                        <property name="tab_fill">False</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox1">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="spacing">12</property>
                         <child>
-                          <object class="GtkGrid" id="devtab-drive-job-grid">
+                          <object class="GtkTable" id="devtab-drive-table">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="row_spacing">6</property>
-                            <property name="column_spacing">6</property>
+                            <property name="n_rows">12</property>
+                            <property name="n_columns">2</property>
+                            <property name="column_spacing">10</property>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-model-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes">Model</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-model-value-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="hexpand">True</property>
+                                <property name="xalign">0</property>
+                                <property name="selectable">True</property>
+                                <property name="ellipsize">end</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-serial-number-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes">Serial Number</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="top_attach">7</property>
+                                <property name="bottom_attach">8</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-serial-number-value-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="hexpand">True</property>
+                                <property name="xalign">0</property>
+                                <property name="selectable">True</property>
+                                <property name="ellipsize">end</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">7</property>
+                                <property name="bottom_attach">8</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
                             <child>
-                              <object class="GtkProgressBar" id="devtab-drive-job-progressbar">
+                              <object class="GtkLabel" id="devtab-drive-wwn-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes">World Wide Name</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="top_attach">8</property>
+                                <property name="bottom_attach">9</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-wwn-value-label">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <property name="hexpand">True</property>
+                                <property name="xalign">0</property>
+                                <property name="selectable">True</property>
+                                <property name="ellipsize">end</property>
                               </object>
                               <packing>
-                                <property name="left_attach">0</property>
-                                <property name="top_attach">0</property>
-                                <property name="width">1</property>
-                                <property name="height">1</property>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">8</property>
+                                <property name="bottom_attach">9</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
                               </packing>
                             </child>
                             <child>
-                              <object class="GtkLabel" id="devtab-drive-job-remaining-label">
+                              <object class="GtkLabel" id="devtab-drive-location-label">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes" comments="The physical location of 
the drive, could be 'Connected to another seat'  or 'Bay 11 of Promise VTrak' or 'USB connector 
II'">Location</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="top_attach">9</property>
+                                <property name="bottom_attach">10</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-location-value-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="hexpand">True</property>
                                 <property name="xalign">0</property>
+                                <property name="selectable">True</property>
+                                <property name="ellipsize">end</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">9</property>
+                                <property name="bottom_attach">10</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-media-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes">Media</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
                               </object>
                               <packing>
-                                <property name="left_attach">0</property>
                                 <property name="top_attach">1</property>
-                                <property name="width">1</property>
-                                <property name="height">1</property>
+                                <property name="bottom_attach">2</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
                               </packing>
                             </child>
                             <child>
-                              <object class="GtkButton" id="devtab-drive-job-cancel-button">
+                              <object class="GtkLabel" id="devtab-drive-media-value-label">
                                 <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="hexpand">True</property>
+                                <property name="xalign">0</property>
+                                <property name="selectable">True</property>
+                                <property name="ellipsize">end</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">1</property>
+                                <property name="bottom_attach">2</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-smart-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes">Assessment</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="top_attach">10</property>
+                                <property name="bottom_attach">11</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-smart-value-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="hexpand">True</property>
+                                <property name="xalign">0</property>
+                                <property name="selectable">True</property>
+                                <property name="ellipsize">end</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">10</property>
+                                <property name="bottom_attach">11</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-job-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">Job</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="top_attach">11</property>
+                                <property name="bottom_attach">12</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options">GTK_FILL</property>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkGrid" id="devtab-drive-job-grid">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="row_spacing">6</property>
+                                <property name="column_spacing">6</property>
+                                <child>
+                                  <object class="GtkProgressBar" id="devtab-drive-job-progressbar">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="hexpand">True</property>
+                                  </object>
+                                  <packing>
+                                    <property name="left_attach">0</property>
+                                    <property name="top_attach">0</property>
+                                    <property name="width">1</property>
+                                    <property name="height">1</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkLabel" id="devtab-drive-job-remaining-label">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="xalign">0</property>
+                                  </object>
+                                  <packing>
+                                    <property name="left_attach">0</property>
+                                    <property name="top_attach">1</property>
+                                    <property name="width">1</property>
+                                    <property name="height">1</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkButton" id="devtab-drive-job-cancel-button">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">True</property>
+                                    <child>
+                                      <object class="GtkImage" id="image3">
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">False</property>
+                                        <property name="icon_name">edit-delete-symbolic</property>
+                                      </object>
+                                    </child>
+                                  </object>
+                                  <packing>
+                                    <property name="left_attach">2</property>
+                                    <property name="top_attach">0</property>
+                                    <property name="width">1</property>
+                                    <property name="height">1</property>
+                                  </packing>
+                                </child>
                                 <child>
-                                  <object class="GtkImage" id="image3">
+                                  <object class="GtkLabel" id="devtab-drive-job-no-progress-label">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
-                                    <property name="icon_name">edit-delete-symbolic</property>
+                                    <property name="xalign">0</property>
                                   </object>
+                                  <packing>
+                                    <property name="left_attach">1</property>
+                                    <property name="top_attach">0</property>
+                                    <property name="width">1</property>
+                                    <property name="height">1</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <placeholder/>
+                                </child>
+                                <child>
+                                  <placeholder/>
                                 </child>
                               </object>
                               <packing>
-                                <property name="left_attach">2</property>
-                                <property name="top_attach">0</property>
-                                <property name="width">1</property>
-                                <property name="height">1</property>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">11</property>
+                                <property name="bottom_attach">12</property>
+                                <property name="y_options"/>
                               </packing>
                             </child>
                             <child>
-                              <object class="GtkLabel" id="devtab-drive-job-no-progress-label">
+                              <object class="GtkLabel" id="devtab-drive-arrayname-label">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes">Name</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="top_attach">2</property>
+                                <property name="bottom_attach">3</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-arrayname-value-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="hexpand">True</property>
                                 <property name="xalign">0</property>
+                                <property name="selectable">True</property>
+                                <property name="ellipsize">end</property>
                               </object>
                               <packing>
                                 <property name="left_attach">1</property>
-                                <property name="top_attach">0</property>
-                                <property name="width">1</property>
-                                <property name="height">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">2</property>
+                                <property name="bottom_attach">3</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
                               </packing>
                             </child>
                             <child>
-                              <placeholder/>
+                              <object class="GtkLabel" id="devtab-drive-size-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes">Size</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="top_attach">3</property>
+                                <property name="bottom_attach">4</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
                             </child>
                             <child>
-                              <placeholder/>
+                              <object class="GtkLabel" id="devtab-drive-size-value-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="hexpand">True</property>
+                                <property name="xalign">0</property>
+                                <property name="selectable">True</property>
+                                <property name="ellipsize">end</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">3</property>
+                                <property name="bottom_attach">4</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
                             </child>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">11</property>
-                            <property name="bottom_attach">12</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-arrayname-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes">Name</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
-                          </object>
-                          <packing>
-                            <property name="top_attach">2</property>
-                            <property name="bottom_attach">3</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-arrayname-value-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="xalign">0</property>
-                            <property name="selectable">True</property>
-                            <property name="ellipsize">end</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">2</property>
-                            <property name="bottom_attach">3</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-size-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes">Size</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
-                          </object>
-                          <packing>
-                            <property name="top_attach">3</property>
-                            <property name="bottom_attach">4</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-size-value-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="xalign">0</property>
-                            <property name="selectable">True</property>
-                            <property name="ellipsize">end</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">3</property>
-                            <property name="bottom_attach">4</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-loop-autoclear-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes">Auto-clear</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
-                          </object>
-                          <packing>
-                            <property name="top_attach">5</property>
-                            <property name="bottom_attach">6</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkBox" id="devtab-loop-autoclear-switch-box">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
                             <child>
-                              <object class="GtkSwitch" id="devtab-loop-autoclear-switch">
+                              <object class="GtkLabel" id="devtab-loop-autoclear-label">
                                 <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="tooltip_text" translatable="yes">Detach loop device after 
unmount action</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes">Auto-clear</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
                               </object>
                               <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">True</property>
-                                <property name="position">0</property>
+                                <property name="top_attach">5</property>
+                                <property name="bottom_attach">6</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkBox" id="devtab-loop-autoclear-switch-box">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <child>
+                                  <object class="GtkSwitch" id="devtab-loop-autoclear-switch">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="tooltip_text" translatable="yes">Detach loop device 
after unmount action</property>
+                                  </object>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">True</property>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">5</property>
+                                <property name="bottom_attach">6</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-backing-file-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes" comments="The filename or URI of 
the file that is used as backing store for the loop device.">Backing File</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="top_attach">6</property>
+                                <property name="bottom_attach">7</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-backing-file-value-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="hexpand">True</property>
+                                <property name="xalign">0</property>
+                                <property name="selectable">True</property>
+                                <property name="ellipsize">end</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">6</property>
+                                <property name="bottom_attach">7</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-partitioning-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">1</property>
+                                <property name="label" translatable="yes">Partitioning</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="top_attach">4</property>
+                                <property name="bottom_attach">5</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="devtab-drive-partitioning-value-label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="hexpand">True</property>
+                                <property name="xalign">0</property>
+                                <property name="selectable">True</property>
+                                <property name="ellipsize">end</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">4</property>
+                                <property name="bottom_attach">5</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                                <property name="y_padding">4</property>
                               </packing>
                             </child>
                           </object>
                           <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">5</property>
-                            <property name="bottom_attach">6</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-backing-file-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes" comments="The filename or URI of the 
file that is used as backing store for the loop device.">Backing File</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
-                          </object>
-                          <packing>
-                            <property name="top_attach">6</property>
-                            <property name="bottom_attach">7</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-backing-file-value-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
-                            <property name="xalign">0</property>
-                            <property name="selectable">True</property>
-                            <property name="ellipsize">end</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">6</property>
-                            <property name="bottom_attach">7</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="devtab-drive-partitioning-label">
-                            <property name="visible">True</property>
-                            <property name="can_focus">False</property>
-                            <property name="xalign">1</property>
-                            <property name="label" translatable="yes">Partitioning</property>
-                            <style>
-                              <class name="dim-label"/>
-                            </style>
-                          </object>
-                          <packing>
-                            <property name="top_attach">4</property>
-                            <property name="bottom_attach">5</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
+                            <property name="expand">False</property>
+                            <property name="fill">True</property>
+                            <property name="position">0</property>
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkLabel" id="devtab-drive-partitioning-value-label">
+                          <object class="GtkLabel" id="devtab-volumes-label">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="hexpand">True</property>
                             <property name="xalign">0</property>
-                            <property name="selectable">True</property>
-                            <property name="ellipsize">end</property>
+                            <property name="label" translatable="yes">_Volumes</property>
+                            <property name="use_underline">True</property>
+                            <attributes>
+                              <attribute name="weight" value="bold"/>
+                            </attributes>
                           </object>
                           <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">4</property>
-                            <property name="bottom_attach">5</property>
-                            <property name="x_options">GTK_FILL</property>
-                            <property name="y_options"/>
-                            <property name="y_padding">4</property>
+                            <property name="expand">False</property>
+                            <property name="fill">True</property>
+                            <property name="position">1</property>
                           </packing>
                         </child>
-                      </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="position">0</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkLabel" id="devtab-volumes-label">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Volumes</property>
-                        <property name="use_underline">True</property>
-                        <attributes>
-                          <attribute name="weight" value="bold"/>
-                        </attributes>
-                      </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="position">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkAlignment" id="alignment3">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="left_padding">12</property>
                         <child>
-                          <object class="GtkVBox" id="vbox3">
+                          <object class="GtkAlignment" id="alignment3">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
+                            <property name="left_padding">12</property>
                             <child>
-                              <object class="GtkVBox" id="vbox4">
+                              <object class="GtkVBox" id="vbox3">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
                                 <child>
-                                  <object class="GtkHBox" id="devtab-grid-hbox">
+                                  <object class="GtkVBox" id="vbox4">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
                                     <child>
-                                      <placeholder/>
+                                      <object class="GtkHBox" id="devtab-grid-hbox">
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">False</property>
+                                        <child>
+                                          <placeholder/>
+                                        </child>
+                                        <child>
+                                          <placeholder/>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="expand">False</property>
+                                        <property name="fill">True</property>
+                                        <property name="position">0</property>
+                                      </packing>
                                     </child>
                                     <child>
-                                      <placeholder/>
+                                      <object class="GtkToolbar" id="devtab-grid-toolbar">
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">False</property>
+                                        <property name="icon_size">1</property>
+                                        <style>
+                                          <class name="inline-toolbar"/>
+                                        </style>
+                                        <child>
+                                          <object class="GtkToolButton" id="toolbutton-mount">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="tooltip_text" translatable="yes">Mount selected 
partition</property>
+                                            <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-mount">Mount</property>
+                                            <property name="use_underline">True</property>
+                                            <property 
name="icon_name">media-playback-start-symbolic</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="homogeneous">True</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkToolButton" id="toolbutton-unmount">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="tooltip_text" translatable="yes">Unmount 
selected partition</property>
+                                            <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-unmount">Unmount</property>
+                                            <property name="use_underline">True</property>
+                                            <property 
name="icon_name">media-playback-stop-symbolic</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="homogeneous">True</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkToolButton" id="toolbutton-activate-swap">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="tooltip_text" translatable="yes">Activate 
selected swap partition</property>
+                                            <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-activate-swap">Activate swap</property>
+                                            <property name="use_underline">True</property>
+                                            <property 
name="icon_name">media-playback-start-symbolic</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="homogeneous">True</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkToolButton" id="toolbutton-deactivate-swap">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="tooltip_text" translatable="yes">Deactivate 
selected swap partition</property>
+                                            <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-deactivate-swap">Deactivate swap</property>
+                                            <property name="use_underline">True</property>
+                                            <property 
name="icon_name">media-playback-stop-symbolic</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="homogeneous">True</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkToolButton" id="toolbutton-unlock">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="tooltip_text" translatable="yes">Unlock selected 
encrypted partition</property>
+                                            <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-unlock">Unlock</property>
+                                            <property name="use_underline">True</property>
+                                            <property name="icon_name">changes-allow-symbolic</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="homogeneous">True</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkToolButton" id="toolbutton-lock">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="tooltip_text" translatable="yes">Lock selected 
encrypted partition</property>
+                                            <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-lock">Lock</property>
+                                            <property name="use_underline">True</property>
+                                            <property name="icon_name">changes-prevent-symbolic</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="homogeneous">True</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkToolButton" id="toolbutton-partition-create">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="tooltip_text" translatable="yes">Create 
partition in unallocated space</property>
+                                            <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-partition-create">Create partition</property>
+                                            <property name="use_underline">True</property>
+                                            <property name="icon_name">list-add-symbolic</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="homogeneous">True</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkToolButton" id="toolbutton-partition-delete">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="tooltip_text" translatable="yes">Delete selected 
partition</property>
+                                            <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-partition-delete">Delete partition</property>
+                                            <property name="use_underline">True</property>
+                                            <property name="icon_name">list-remove-symbolic</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="homogeneous">True</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkToolButton" id="toolbutton-volume-menu">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="tooltip_text" translatable="yes">Additional 
partition options</property>
+                                            <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-volume-menu">Menu</property>
+                                            <property name="use_underline">True</property>
+                                            <property name="icon_name">system-run-symbolic</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="homogeneous">True</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="expand">False</property>
+                                        <property name="fill">True</property>
+                                        <property name="position">1</property>
+                                      </packing>
                                     </child>
                                   </object>
                                   <packing>
                                     <property name="expand">False</property>
-                                    <property name="fill">True</property>
+                                    <property name="fill">False</property>
                                     <property name="position">0</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <object class="GtkToolbar" id="devtab-grid-toolbar">
+                                  <object class="GtkTable" id="devtab-table">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
-                                    <property name="icon_size">1</property>
-                                    <style>
-                                      <class name="inline-toolbar"/>
-                                    </style>
+                                    <property name="n_rows">6</property>
+                                    <property name="n_columns">2</property>
+                                    <property name="column_spacing">10</property>
                                     <child>
-                                      <object class="GtkToolButton" id="toolbutton-mount">
+                                      <object class="GtkLabel" id="devtab-size-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="tooltip_text" translatable="yes">Mount selected 
partition</property>
-                                        <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-mount">Mount</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="icon_name">media-playback-start-symbolic</property>
+                                        <property name="xalign">1</property>
+                                        <property name="label" translatable="yes">Size</property>
+                                        <style>
+                                          <class name="dim-label"/>
+                                        </style>
                                       </object>
                                       <packing>
-                                        <property name="expand">False</property>
-                                        <property name="homogeneous">True</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_options"/>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <object class="GtkToolButton" id="toolbutton-unmount">
+                                      <object class="GtkLabel" id="devtab-size-value-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="tooltip_text" translatable="yes">Unmount selected 
partition</property>
-                                        <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-unmount">Unmount</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="icon_name">media-playback-stop-symbolic</property>
+                                        <property name="hexpand">True</property>
+                                        <property name="xalign">0</property>
+                                        <property name="selectable">True</property>
+                                        <property name="ellipsize">end</property>
                                       </object>
                                       <packing>
-                                        <property name="expand">False</property>
-                                        <property name="homogeneous">True</property>
+                                        <property name="left_attach">1</property>
+                                        <property name="right_attach">2</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_options"/>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <object class="GtkToolButton" id="toolbutton-activate-swap">
+                                      <object class="GtkLabel" id="devtab-volume-type-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="tooltip_text" translatable="yes">Activate selected 
swap partition</property>
-                                        <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-activate-swap">Activate swap</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="icon_name">media-playback-start-symbolic</property>
+                                        <property name="xalign">1</property>
+                                        <property name="label" translatable="yes" comments="The contents of 
the device, for example 'Unknown', 'FAT (32-bit version)', 'Ext4 (version 1.0)', 'Swap (version 
2)'">Contents</property>
+                                        <style>
+                                          <class name="dim-label"/>
+                                        </style>
                                       </object>
                                       <packing>
-                                        <property name="expand">False</property>
-                                        <property name="homogeneous">True</property>
+                                        <property name="top_attach">4</property>
+                                        <property name="bottom_attach">5</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_options"/>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <object class="GtkToolButton" id="toolbutton-deactivate-swap">
+                                      <object class="GtkLabel" id="devtab-volume-type-value-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="tooltip_text" translatable="yes">Deactivate selected 
swap partition</property>
-                                        <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-deactivate-swap">Deactivate swap</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="icon_name">media-playback-stop-symbolic</property>
+                                        <property name="hexpand">True</property>
+                                        <property name="xalign">0</property>
+                                        <property name="selectable">True</property>
+                                        <property name="ellipsize">end</property>
                                       </object>
                                       <packing>
-                                        <property name="expand">False</property>
-                                        <property name="homogeneous">True</property>
+                                        <property name="left_attach">1</property>
+                                        <property name="right_attach">2</property>
+                                        <property name="top_attach">4</property>
+                                        <property name="bottom_attach">5</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_options"/>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <object class="GtkToolButton" id="toolbutton-unlock">
+                                      <object class="GtkLabel" id="devtab-device-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="tooltip_text" translatable="yes">Unlock selected 
encrypted partition</property>
-                                        <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-unlock">Unlock</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="icon_name">changes-allow-symbolic</property>
+                                        <property name="xalign">1</property>
+                                        <property name="label" translatable="yes">Device</property>
+                                        <style>
+                                          <class name="dim-label"/>
+                                        </style>
                                       </object>
                                       <packing>
-                                        <property name="expand">False</property>
-                                        <property name="homogeneous">True</property>
+                                        <property name="top_attach">1</property>
+                                        <property name="bottom_attach">2</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_options"/>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <object class="GtkToolButton" id="toolbutton-lock">
+                                      <object class="GtkLabel" id="devtab-device-value-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="tooltip_text" translatable="yes">Lock selected 
encrypted partition</property>
-                                        <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-lock">Lock</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="icon_name">changes-prevent-symbolic</property>
+                                        <property name="hexpand">True</property>
+                                        <property name="xalign">0</property>
+                                        <property name="selectable">True</property>
+                                        <property name="ellipsize">end</property>
                                       </object>
                                       <packing>
-                                        <property name="expand">False</property>
-                                        <property name="homogeneous">True</property>
+                                        <property name="left_attach">1</property>
+                                        <property name="right_attach">2</property>
+                                        <property name="top_attach">1</property>
+                                        <property name="bottom_attach">2</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_options"/>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <object class="GtkToolButton" id="toolbutton-partition-create">
+                                      <object class="GtkLabel" id="devtab-uuid-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="tooltip_text" translatable="yes">Create partition in 
unallocated space</property>
-                                        <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-partition-create">Create partition</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="icon_name">list-add-symbolic</property>
+                                        <property name="xalign">1</property>
+                                        <property name="label" translatable="yes">UUID</property>
+                                        <style>
+                                          <class name="dim-label"/>
+                                        </style>
                                       </object>
                                       <packing>
-                                        <property name="expand">False</property>
-                                        <property name="homogeneous">True</property>
+                                        <property name="top_attach">2</property>
+                                        <property name="bottom_attach">3</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_options"/>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <object class="GtkToolButton" id="toolbutton-partition-delete">
+                                      <object class="GtkLabel" id="devtab-uuid-value-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="tooltip_text" translatable="yes">Delete selected 
partition</property>
-                                        <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-partition-delete">Delete partition</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="icon_name">list-remove-symbolic</property>
+                                        <property name="hexpand">True</property>
+                                        <property name="xalign">0</property>
+                                        <property name="selectable">True</property>
+                                        <property name="ellipsize">end</property>
                                       </object>
                                       <packing>
-                                        <property name="expand">False</property>
-                                        <property name="homogeneous">True</property>
+                                        <property name="left_attach">1</property>
+                                        <property name="right_attach">2</property>
+                                        <property name="top_attach">2</property>
+                                        <property name="bottom_attach">3</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_options"/>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <object class="GtkToolButton" id="toolbutton-volume-menu">
+                                      <object class="GtkLabel" id="devtab-partition-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="tooltip_text" translatable="yes">Additional 
partition options</property>
-                                        <property name="label" translatable="yes" context="Accessibility 
label for toolbutton-volume-menu">Menu</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="icon_name">system-run-symbolic</property>
+                                        <property name="xalign">1</property>
+                                        <property name="label" translatable="yes">Partition Type</property>
+                                        <style>
+                                          <class name="dim-label"/>
+                                        </style>
                                       </object>
                                       <packing>
-                                        <property name="expand">False</property>
-                                        <property name="homogeneous">True</property>
+                                        <property name="top_attach">3</property>
+                                        <property name="bottom_attach">4</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_options"/>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
-                                  </object>
-                                  <packing>
-                                    <property name="expand">False</property>
-                                    <property name="fill">True</property>
-                                    <property name="position">1</property>
-                                  </packing>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                                <property name="position">0</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkTable" id="devtab-table">
-                                <property name="visible">True</property>
-                                <property name="can_focus">False</property>
-                                <property name="n_rows">6</property>
-                                <property name="n_columns">2</property>
-                                <property name="column_spacing">10</property>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-size-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="xalign">1</property>
-                                    <property name="label" translatable="yes">Size</property>
-                                    <style>
-                                      <class name="dim-label"/>
-                                    </style>
-                                  </object>
-                                  <packing>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_options"/>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-size-value-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="hexpand">True</property>
-                                    <property name="xalign">0</property>
-                                    <property name="selectable">True</property>
-                                    <property name="ellipsize">end</property>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">1</property>
-                                    <property name="right_attach">2</property>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_options"/>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-volume-type-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="xalign">1</property>
-                                    <property name="label" translatable="yes" comments="The contents of the 
device, for example 'Unknown', 'FAT (32-bit version)', 'Ext4 (version 1.0)', 'Swap (version 
2)'">Contents</property>
-                                    <style>
-                                      <class name="dim-label"/>
-                                    </style>
-                                  </object>
-                                  <packing>
-                                    <property name="top_attach">4</property>
-                                    <property name="bottom_attach">5</property>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_options"/>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-volume-type-value-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="hexpand">True</property>
-                                    <property name="xalign">0</property>
-                                    <property name="selectable">True</property>
-                                    <property name="ellipsize">end</property>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">1</property>
-                                    <property name="right_attach">2</property>
-                                    <property name="top_attach">4</property>
-                                    <property name="bottom_attach">5</property>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_options"/>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-device-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="xalign">1</property>
-                                    <property name="label" translatable="yes">Device</property>
-                                    <style>
-                                      <class name="dim-label"/>
-                                    </style>
-                                  </object>
-                                  <packing>
-                                    <property name="top_attach">1</property>
-                                    <property name="bottom_attach">2</property>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_options"/>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-device-value-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="hexpand">True</property>
-                                    <property name="xalign">0</property>
-                                    <property name="selectable">True</property>
-                                    <property name="ellipsize">end</property>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">1</property>
-                                    <property name="right_attach">2</property>
-                                    <property name="top_attach">1</property>
-                                    <property name="bottom_attach">2</property>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_options"/>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-uuid-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="xalign">1</property>
-                                    <property name="label" translatable="yes">UUID</property>
-                                    <style>
-                                      <class name="dim-label"/>
-                                    </style>
-                                  </object>
-                                  <packing>
-                                    <property name="top_attach">2</property>
-                                    <property name="bottom_attach">3</property>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_options"/>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-uuid-value-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="hexpand">True</property>
-                                    <property name="xalign">0</property>
-                                    <property name="selectable">True</property>
-                                    <property name="ellipsize">end</property>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">1</property>
-                                    <property name="right_attach">2</property>
-                                    <property name="top_attach">2</property>
-                                    <property name="bottom_attach">3</property>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_options"/>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-partition-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="xalign">1</property>
-                                    <property name="label" translatable="yes">Partition Type</property>
-                                    <style>
-                                      <class name="dim-label"/>
-                                    </style>
-                                  </object>
-                                  <packing>
-                                    <property name="top_attach">3</property>
-                                    <property name="bottom_attach">4</property>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_options"/>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-partition-value-label">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="hexpand">True</property>
-                                    <property name="xalign">0</property>
-                                    <property name="selectable">True</property>
-                                    <property name="ellipsize">end</property>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">1</property>
-                                    <property name="right_attach">2</property>
-                                    <property name="top_attach">3</property>
-                                    <property name="bottom_attach">4</property>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_options"/>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="devtab-job-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">Job</property>
-                                    <style>
-                                      <class name="dim-label"/>
-                                    </style>
-                                  </object>
-                                  <packing>
-                                    <property name="top_attach">5</property>
-                                    <property name="bottom_attach">6</property>
-                                    <property name="x_options">GTK_FILL</property>
-                                    <property name="y_padding">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkGrid" id="devtab-job-grid">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="row_spacing">6</property>
-                                    <property name="column_spacing">6</property>
                                     <child>
-                                      <object class="GtkProgressBar" id="devtab-job-progressbar">
+                                      <object class="GtkLabel" id="devtab-partition-value-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="hexpand">True</property>
+                                        <property name="xalign">0</property>
+                                        <property name="selectable">True</property>
+                                        <property name="ellipsize">end</property>
                                       </object>
                                       <packing>
-                                        <property name="left_attach">0</property>
-                                        <property name="top_attach">0</property>
-                                        <property name="width">1</property>
-                                        <property name="height">1</property>
+                                        <property name="left_attach">1</property>
+                                        <property name="right_attach">2</property>
+                                        <property name="top_attach">3</property>
+                                        <property name="bottom_attach">4</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_options"/>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <object class="GtkLabel" id="devtab-job-remaining-label">
+                                      <object class="GtkLabel" id="devtab-job-label">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
-                                        <property name="xalign">0</property>
+                                        <property name="xalign">1</property>
+                                        <property name="yalign">0</property>
+                                        <property name="label" translatable="yes">Job</property>
+                                        <style>
+                                          <class name="dim-label"/>
+                                        </style>
                                       </object>
                                       <packing>
-                                        <property name="left_attach">0</property>
-                                        <property name="top_attach">1</property>
-                                        <property name="width">1</property>
-                                        <property name="height">1</property>
+                                        <property name="top_attach">5</property>
+                                        <property name="bottom_attach">6</property>
+                                        <property name="x_options">GTK_FILL</property>
+                                        <property name="y_padding">4</property>
                                       </packing>
                                     </child>
                                     <child>
-                                      <object class="GtkButton" id="devtab-job-cancel-button">
+                                      <object class="GtkGrid" id="devtab-job-grid">
                                         <property name="visible">True</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="receives_default">True</property>
+                                        <property name="can_focus">False</property>
+                                        <property name="row_spacing">6</property>
+                                        <property name="column_spacing">6</property>
                                         <child>
-                                          <object class="GtkImage" id="image4">
+                                          <object class="GtkProgressBar" id="devtab-job-progressbar">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
-                                            <property name="icon_name">edit-delete-symbolic</property>
+                                            <property name="hexpand">True</property>
                                           </object>
+                                          <packing>
+                                            <property name="left_attach">0</property>
+                                            <property name="top_attach">0</property>
+                                            <property name="width">1</property>
+                                            <property name="height">1</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="devtab-job-remaining-label">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="xalign">0</property>
+                                          </object>
+                                          <packing>
+                                            <property name="left_attach">0</property>
+                                            <property name="top_attach">1</property>
+                                            <property name="width">1</property>
+                                            <property name="height">1</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkButton" id="devtab-job-cancel-button">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">True</property>
+                                            <property name="receives_default">True</property>
+                                            <child>
+                                              <object class="GtkImage" id="image4">
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">False</property>
+                                                <property name="icon_name">edit-delete-symbolic</property>
+                                              </object>
+                                            </child>
+                                          </object>
+                                          <packing>
+                                            <property name="left_attach">2</property>
+                                            <property name="top_attach">0</property>
+                                            <property name="width">1</property>
+                                            <property name="height">1</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="devtab-job-no-progress-label">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">False</property>
+                                            <property name="xalign">0</property>
+                                          </object>
+                                          <packing>
+                                            <property name="left_attach">1</property>
+                                            <property name="top_attach">0</property>
+                                            <property name="width">1</property>
+                                            <property name="height">1</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <placeholder/>
+                                        </child>
+                                        <child>
+                                          <placeholder/>
                                         </child>
-                                      </object>
-                                      <packing>
-                                        <property name="left_attach">2</property>
-                                        <property name="top_attach">0</property>
-                                        <property name="width">1</property>
-                                        <property name="height">1</property>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkLabel" id="devtab-job-no-progress-label">
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">False</property>
-                                        <property name="xalign">0</property>
                                       </object>
                                       <packing>
                                         <property name="left_attach">1</property>
-                                        <property name="top_attach">0</property>
-                                        <property name="width">1</property>
-                                        <property name="height">1</property>
+                                        <property name="right_attach">2</property>
+                                        <property name="top_attach">5</property>
+                                        <property name="bottom_attach">6</property>
+                                        <property name="y_options">GTK_FILL</property>
                                       </packing>
                                     </child>
-                                    <child>
-                                      <placeholder/>
-                                    </child>
-                                    <child>
-                                      <placeholder/>
-                                    </child>
                                   </object>
                                   <packing>
-                                    <property name="left_attach">1</property>
-                                    <property name="right_attach">2</property>
-                                    <property name="top_attach">5</property>
-                                    <property name="bottom_attach">6</property>
-                                    <property name="y_options">GTK_FILL</property>
+                                    <property name="expand">False</property>
+                                    <property name="fill">True</property>
+                                    <property name="position">1</property>
                                   </packing>
                                 </child>
                               </object>
-                              <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">True</property>
-                                <property name="position">1</property>
-                              </packing>
                             </child>
                           </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">True</property>
+                            <property name="position">2</property>
+                          </packing>
                         </child>
                       </object>
                       <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
                         <property name="position">2</property>
+                        <property name="tab_fill">False</property>
                       </packing>
                     </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="label1">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label">devtab</property>
+                      </object>
+                      <packing>
+                        <property name="position">2</property>
+                        <property name="tab_fill">False</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child type="tab">
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child type="tab">
+                      <placeholder/>
+                    </child>
                   </object>
-                  <packing>
-                    <property name="position">2</property>
-                    <property name="tab_fill">False</property>
-                  </packing>
-                </child>
-                <child type="tab">
-                  <object class="GtkLabel" id="label1">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="label">devtab</property>
-                  </object>
-                  <packing>
-                    <property name="position">2</property>
-                    <property name="tab_fill">False</property>
-                  </packing>
-                </child>
-                <child>
-                  <placeholder/>
-                </child>
-                <child type="tab">
-                  <placeholder/>
-                </child>
-                <child>
-                  <placeholder/>
-                </child>
-                <child type="tab">
-                  <placeholder/>
                 </child>
               </object>
               <packing>
-                <property name="resize">True</property>
-                <property name="shrink">False</property>
+                <property name="name">content</property>
               </packing>
             </child>
           </object>
@@ -1171,4 +1293,10 @@
       </object>
     </child>
   </object>
+  <object class="HdyHeaderGroup">
+    <headerbars>
+      <headerbar name="disks-side-headerbar"/>
+      <headerbar name="disks-main-headerbar"/>
+    </headerbars>
+  </object>
 </interface>


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