[shotwell/wip/gtk4: 13/45] Make preferences dialog appear




commit 472a88896c438fe08df40f2aa46dd9915ecced50
Author: Jens Georg <mail jensge org>
Date:   Mon Apr 4 19:20:16 2022 +0200

    Make preferences dialog appear

 data/ui/preferences_dialog.ui | 948 +++++++++++++++++-------------------------
 meson.build                   |   5 -
 src/dialogs/Preferences.vala  |   2 +-
 src/meson.build               |   3 +-
 4 files changed, 395 insertions(+), 563 deletions(-)
---
diff --git a/data/ui/preferences_dialog.ui b/data/ui/preferences_dialog.ui
index a28eacf0..d66290f3 100644
--- a/data/ui/preferences_dialog.ui
+++ b/data/ui/preferences_dialog.ui
@@ -1,625 +1,463 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.20.0 -->
 <interface domain="shotwell">
-  <requires lib="gtk+" version="3.18"/>
+  <requires lib="gtk" version="4.0"/>
   <template class="PreferencesDialog" parent="GtkDialog">
-    <property name="can_focus">False</property>
-    <property name="destroy_with_parent">True</property>
-    <property name="type_hint">dialog</property>
-    <property name="skip_taskbar_hint">True</property>
-    <child internal-child="vbox">
+    <property name="destroy_with_parent">1</property>
+    <child internal-child="content_area">
       <object class="GtkBox" id="dialog-vbox3">
-        <property name="visible">True</property>
-        <property name="can_focus">False</property>
         <property name="orientation">vertical</property>
-        <child internal-child="action_area">
-          <object class="GtkButtonBox">
-            <property name="can_focus">False</property>
-          </object>
-          <packing>
-            <property name="expand">False</property>
-            <property name="fill">False</property>
-            <property name="position">0</property>
-          </packing>
-        </child>
         <child>
           <object class="GtkNotebook" id="preferences_notebook">
-            <property name="visible">True</property>
-            <property name="can_focus">True</property>
-            <property name="show_border">False</property>
+            <property name="vexpand">1</property>
+            <property name="focusable">1</property>
+            <property name="show_border">0</property>
             <child>
-              <object class="GtkGrid" id="table1">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="hexpand">True</property>
-                <property name="vexpand">True</property>
-                <property name="border_width">6</property>
-                <property name="row_spacing">4</property>
-                <property name="column_spacing">8</property>
-                <child>
-                  <object class="GtkButton" id="library_dir_button">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="action">select-folder</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">1</property>
-                    <property name="top_attach">4</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkComboBoxText" id="default_raw_developer_combo">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">1</property>
-                    <property name="top_attach">14</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="label5">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_bottom">3</property>
-                    <property name="hexpand">True</property>
-                    <property name="label" translatable="yes">Display</property>
-                    <attributes>
-                      <attribute name="weight" value="bold"/>
-                    </attributes>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">0</property>
-                    <property name="width">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="library location">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_top">14</property>
-                    <property name="margin_bottom">3</property>
-                    <property name="hexpand">True</property>
-                    <property name="label" translatable="yes">Library Location</property>
-                    <attributes>
-                      <attribute name="weight" value="bold"/>
-                    </attributes>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">3</property>
-                    <property name="width">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="label4">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_left">10</property>
-                    <property name="label" translatable="yes">_Import photos to:</property>
-                    <property name="use_underline">True</property>
-                    <property name="mnemonic_widget">library_dir_button</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">4</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkCheckButton" id="autoimport">
-                    <property name="label" translatable="yes">_Watch library directory for new 
files</property>
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_left">10</property>
-                    <property name="use_underline">True</property>
-                    <property name="draw_indicator">True</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">5</property>
-                    <property name="width">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="importing">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_top">14</property>
-                    <property name="margin_bottom">3</property>
-                    <property name="hexpand">True</property>
-                    <property name="label" translatable="yes">Importing</property>
-                    <attributes>
-                      <attribute name="weight" value="bold"/>
-                    </attributes>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">6</property>
-                    <property name="width">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="dir_structure_label">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_left">10</property>
-                    <property name="label" translatable="yes">_Directory structure:</property>
-                    <property name="use_underline">True</property>
-                    <property name="mnemonic_widget">dir_pattern_combo</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">7</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="dir_pattern_example">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_left">34</property>
-                    <property name="label" translatable="yes">Example:</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">9</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkCheckButton" id="lowercase">
-                    <property name="label" translatable="yes">R_ename imported files to lowercase</property>
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_left">10</property>
-                    <property name="use_underline">True</property>
-                    <property name="draw_indicator">True</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">10</property>
-                    <property name="width">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="label10">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_top">14</property>
-                    <property name="margin_bottom">3</property>
-                    <property name="label" translatable="yes">Metadata</property>
-                    <attributes>
-                      <attribute name="weight" value="bold"/>
-                    </attributes>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">11</property>
-                    <property name="width">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkCheckButton" id="write_metadata">
-                    <property name="label" translatable="yes">Write tags, titles, and other _metadata to 
photo files</property>
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_left">10</property>
-                    <property name="use_underline">True</property>
-                    <property name="draw_indicator">True</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">12</property>
-                    <property name="width">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="label3">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_top">14</property>
-                    <property name="margin_bottom">3</property>
-                    <property name="label" translatable="yes">RAW Developer</property>
-                    <attributes>
-                      <attribute name="weight" value="bold"/>
-                    </attributes>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">13</property>
-                    <property name="width">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="label6">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_left">10</property>
-                    <property name="label" translatable="yes">De_fault:</property>
-                    <property name="use_underline">True</property>
-                    <property name="mnemonic_widget">default_raw_developer_combo</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">14</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkComboBoxText" id="dir_pattern_combo">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">1</property>
-                    <property name="top_attach">7</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkEntry" id="dir_pattern_entry">
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="invisible_char">•</property>
-                    <property name="primary_icon_activatable">False</property>
-                    <property name="secondary_icon_activatable">False</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">1</property>
-                    <property name="top_attach">8</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel" id="dynamic example">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="hexpand">True</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">1</property>
-                    <property name="top_attach">9</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkBox" id="hbox1">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+              <object class="GtkNotebookPage">
+                <property name="child">
+                  <object class="GtkGrid" id="table1">
+                    <property name="hexpand">1</property>
+                    <property name="vexpand">1</property>
+                    <property name="row_spacing">4</property>
+                    <property name="column_spacing">8</property>
                     <child>
-                      <object class="GtkLabel" id="patern">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                      <object class="GtkButton" id="library_dir_button">
+                        <layout>
+                          <property name="column">1</property>
+                          <property name="row">4</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkComboBoxText" id="default_raw_developer_combo">
+                        <layout>
+                          <property name="column">1</property>
+                          <property name="row">14</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label5">
                         <property name="halign">start</property>
-                        <property name="margin_left">34</property>
-                        <property name="label" translatable="yes">_Pattern:</property>
-                        <property name="use_underline">True</property>
+                        <property name="margin_bottom">3</property>
+                        <property name="hexpand">1</property>
+                        <property name="label" translatable="yes">Display</property>
+                        <attributes>
+                          <attribute name="weight" value="bold"></attribute>
+                        </attributes>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">0</property>
+                          <property name="column-span">2</property>
+                        </layout>
                       </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="position">0</property>
-                      </packing>
                     </child>
                     <child>
-                      <object class="GtkLabel" id="pattern_help">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                      <object class="GtkLabel" id="library location">
+                        <property name="halign">start</property>
+                        <property name="margin_top">14</property>
+                        <property name="margin_bottom">3</property>
+                        <property name="hexpand">1</property>
+                        <property name="label" translatable="yes">Library Location</property>
                         <attributes>
-                          <attribute name="underline" value="True"/>
+                          <attribute name="weight" value="bold"></attribute>
                         </attributes>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">3</property>
+                          <property name="column-span">2</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label4">
+                        <property name="halign">start</property>
+                        <property name="margin-start">10</property>
+                        <property name="label" translatable="yes">_Import photos to:</property>
+                        <property name="use_underline">1</property>
+                        <property name="mnemonic_widget">library_dir_button</property>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">4</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkCheckButton" id="autoimport">
+                        <property name="label" translatable="yes">_Watch library directory for new 
files</property>
+                        <property name="focusable">1</property>
+                        <property name="halign">start</property>
+                        <property name="margin-start">10</property>
+                        <property name="use_underline">1</property>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">5</property>
+                          <property name="column-span">2</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="importing">
+                        <property name="halign">start</property>
+                        <property name="margin_top">14</property>
+                        <property name="margin_bottom">3</property>
+                        <property name="hexpand">1</property>
+                        <property name="label" translatable="yes">Importing</property>
+                        <attributes>
+                          <attribute name="weight" value="bold"></attribute>
+                        </attributes>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">6</property>
+                          <property name="column-span">2</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="dir_structure_label">
+                        <property name="halign">start</property>
+                        <property name="margin-start">10</property>
+                        <property name="label" translatable="yes">_Directory structure:</property>
+                        <property name="use_underline">1</property>
+                        <property name="mnemonic_widget">dir_pattern_combo</property>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">7</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="dir_pattern_example">
+                        <property name="halign">start</property>
+                        <property name="margin-start">34</property>
+                        <property name="label" translatable="yes">Example:</property>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">9</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkCheckButton" id="lowercase">
+                        <property name="label" translatable="yes">R_ename imported files to 
lowercase</property>
+                        <property name="focusable">1</property>
+                        <property name="halign">start</property>
+                        <property name="margin-start">10</property>
+                        <property name="use_underline">1</property>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">10</property>
+                          <property name="column-span">2</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label10">
+                        <property name="halign">start</property>
+                        <property name="margin_top">14</property>
+                        <property name="margin_bottom">3</property>
+                        <property name="label" translatable="yes">Metadata</property>
+                        <attributes>
+                          <attribute name="weight" value="bold"></attribute>
+                        </attributes>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">11</property>
+                          <property name="column-span">2</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkCheckButton" id="write_metadata">
+                        <property name="label" translatable="yes">Write tags, titles, and other _metadata to 
photo files</property>
+                        <property name="focusable">1</property>
+                        <property name="halign">start</property>
+                        <property name="margin-start">10</property>
+                        <property name="use_underline">1</property>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">12</property>
+                          <property name="column-span">2</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label3">
+                        <property name="halign">start</property>
+                        <property name="margin_top">14</property>
+                        <property name="margin_bottom">3</property>
+                        <property name="label" translatable="yes">RAW Developer</property>
+                        <attributes>
+                          <attribute name="weight" value="bold"></attribute>
+                        </attributes>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">13</property>
+                          <property name="column-span">2</property>
+                        </layout>
                       </object>
-                      <packing>
-                        <property name="expand">True</property>
-                        <property name="fill">True</property>
-                        <property name="position">1</property>
-                      </packing>
                     </child>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">8</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="tooltip_text" translatable="yes">When viewing images that are 
transparent, they will be drawn against this background.</property>
-                    <property name="halign">start</property>
-                    <property name="valign">start</property>
-                    <property name="margin_left">10</property>
-                    <property name="label" translatable="yes">Transparent Background:</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkBox">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="orientation">vertical</property>
                     <child>
-                      <object class="GtkToggleButton" id="transparent_checker_radio">
-                        <property name="label" translatable="yes">Checkered</property>
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
+                      <object class="GtkLabel" id="label6">
                         <property name="halign">start</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <property name="group">transparent_solid_radio</property>
+                        <property name="margin-start">10</property>
+                        <property name="label" translatable="yes">De_fault:</property>
+                        <property name="use_underline">1</property>
+                        <property name="mnemonic_widget">default_raw_developer_combo</property>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">14</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkComboBoxText" id="dir_pattern_combo">
+                        <layout>
+                          <property name="column">1</property>
+                          <property name="row">7</property>
+                        </layout>
                       </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="position">0</property>
-                      </packing>
                     </child>
                     <child>
-                      <object class="GtkBox" id="box1">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                      <object class="GtkEntry" id="dir_pattern_entry">
+                        <property name="focusable">1</property>
+                        <property name="invisible_char">•</property>
+                        <property name="primary_icon_activatable">0</property>
+                        <property name="secondary_icon_activatable">0</property>
+                        <layout>
+                          <property name="column">1</property>
+                          <property name="row">8</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="dynamic example">
+                        <property name="halign">start</property>
+                        <property name="hexpand">1</property>
+                        <layout>
+                          <property name="column">1</property>
+                          <property name="row">9</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkBox" id="hbox1">
                         <child>
-                          <object class="GtkToggleButton" id="transparent_solid_radio">
-                            <property name="label" translatable="yes">Solid color</property>
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="receives_default">False</property>
+                          <object class="GtkLabel" id="patern">
                             <property name="halign">start</property>
-                            <property name="active">True</property>
-                            <property name="draw_indicator">True</property>
+                            <property name="margin-start">34</property>
+                            <property name="label" translatable="yes">_Pattern:</property>
+                            <property name="use_underline">1</property>
                           </object>
-                          <packing>
-                            <property name="expand">False</property>
-                            <property name="fill">True</property>
-                            <property name="position">0</property>
-                          </packing>
                         </child>
                         <child>
-                          <object class="GtkColorButton" id="transparent_solid_color">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="receives_default">True</property>
+                          <object class="GtkLabel" id="pattern_help">
+                            <property name="hexpand">1</property>
+                            <attributes>
+                              <attribute name="underline" value="True"></attribute>
+                            </attributes>
                           </object>
-                          <packing>
-                            <property name="expand">False</property>
-                            <property name="fill">True</property>
-                            <property name="pack_type">end</property>
-                            <property name="position">1</property>
-                          </packing>
                         </child>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">8</property>
+                        </layout>
                       </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="position">1</property>
-                      </packing>
                     </child>
                     <child>
-                      <object class="GtkToggleButton" id="transparent_none_radio">
-                        <property name="label" translatable="yes">None</property>
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
+                      <object class="GtkLabel">
+                        <property name="tooltip_text" translatable="yes">When viewing images that are 
transparent, they will be drawn against this background.</property>
                         <property name="halign">start</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <property name="group">transparent_solid_radio</property>
+                        <property name="valign">start</property>
+                        <property name="margin-start">10</property>
+                        <property name="label" translatable="yes">Transparent Background:</property>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">2</property>
+                        </layout>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkBox">
+                        <property name="orientation">vertical</property>
+                        <child>
+                          <object class="GtkToggleButton" id="transparent_checker_radio">
+                            <property name="label" translatable="yes">Checkered</property>
+                            <property name="focusable">1</property>
+                            <property name="halign">start</property>
+                            <property name="active">1</property>
+                            <property name="group">transparent_solid_radio</property>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkBox" id="box1">
+                            <child>
+                              <object class="GtkToggleButton" id="transparent_solid_radio">
+                                <property name="label" translatable="yes">Solid color</property>
+                                <property name="focusable">1</property>
+                                <property name="halign">start</property>
+                                <property name="active">1</property>
+                              </object>
+                            </child>
+                            <child>
+                              <object class="GtkColorButton" id="transparent_solid_color">
+                                <property name="focusable">1</property>
+                                <property name="receives_default">1</property>
+                              </object>
+                            </child>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkToggleButton" id="transparent_none_radio">
+                            <property name="label" translatable="yes">None</property>
+                            <property name="focusable">1</property>
+                            <property name="halign">start</property>
+                            <property name="active">1</property>
+                            <property name="group">transparent_solid_radio</property>
+                          </object>
+                        </child>
+                        <layout>
+                          <property name="column">1</property>
+                          <property name="row">2</property>
+                        </layout>
                       </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="position">2</property>
-                      </packing>
                     </child>
-                  </object>
-                  <packing>
-                    <property name="left_attach">1</property>
-                    <property name="top_attach">2</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkLabel">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="halign">start</property>
-                    <property name="margin_left">10</property>
-                    <property name="label" translatable="yes">Use dark theme:</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">0</property>
-                    <property name="top_attach">1</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkSwitch" id="switch_dark">
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="halign">start</property>
-                  </object>
-                  <packing>
-                    <property name="left_attach">1</property>
-                    <property name="top_attach">1</property>
-                  </packing>
-                </child>
-              </object>
-            </child>
-            <child type="tab">
-              <object class="GtkLabel" id="library-tab">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="label" translatable="yes">Library</property>
-              </object>
-              <packing>
-                <property name="tab_fill">False</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkBox" id="hbox4">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="valign">start</property>
-                <property name="border_width">6</property>
-                <child>
-                  <object class="GtkBox" id="vbox2">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="margin_left">6</property>
-                    <property name="orientation">vertical</property>
-                    <property name="spacing">6</property>
                     <child>
-                      <object class="GtkLabel" id="label7">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                      <object class="GtkLabel">
                         <property name="halign">start</property>
-                        <property name="margin_left">4</property>
-                        <property name="margin_right">4</property>
-                        <property name="hexpand">True</property>
-                        <property name="label" translatable="yes">E_xternal photo editor:</property>
-                        <property name="use_underline">True</property>
-                        <property name="mnemonic_widget">photo_editor_combo</property>
+                        <property name="margin-start">10</property>
+                        <property name="label" translatable="yes">Use dark theme:</property>
+                        <layout>
+                          <property name="column">0</property>
+                          <property name="row">1</property>
+                        </layout>
                       </object>
-                      <packing>
-                        <property name="expand">True</property>
-                        <property name="fill">True</property>
-                        <property name="position">0</property>
-                      </packing>
                     </child>
                     <child>
-                      <object class="GtkLabel" id="label8">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                      <object class="GtkSwitch" id="switch_dark">
+                        <property name="focusable">1</property>
                         <property name="halign">start</property>
-                        <property name="margin_left">4</property>
-                        <property name="margin_right">4</property>
-                        <property name="label" translatable="yes">External _RAW editor:</property>
-                        <property name="use_underline">True</property>
-                        <property name="mnemonic_widget">raw_editor_combo</property>
+                        <layout>
+                          <property name="column">1</property>
+                          <property name="row">1</property>
+                        </layout>
                       </object>
-                      <packing>
-                        <property name="expand">True</property>
-                        <property name="fill">True</property>
-                        <property name="position">1</property>
-                      </packing>
                     </child>
                   </object>
-                  <packing>
-                    <property name="expand">True</property>
-                    <property name="fill">True</property>
-                    <property name="position">0</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkBox" id="vbox3">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="orientation">vertical</property>
-                    <property name="spacing">6</property>
+                </property>
+                <property name="tab">
+                  <object class="GtkLabel" id="library-tab">
+                    <property name="label" translatable="yes">Library</property>
+                  </object>
+                </property>
+              </object>
+            </child>
+            <child>
+              <object class="GtkNotebookPage">
+                <property name="position">1</property>
+                <property name="child">
+                  <object class="GtkBox" id="hbox4">
+                    <property name="valign">start</property>
                     <child>
-                      <object class="GtkComboBox" id="photo_editor_combo">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                      <object class="GtkBox" id="vbox2">
+                        <property name="hexpand">1</property>
+                        <property name="margin-start">6</property>
+                        <property name="orientation">vertical</property>
+                        <property name="spacing">6</property>
+                        <child>
+                          <object class="GtkLabel" id="label7">
+                            <property name="vexpand">1</property>
+                            <property name="halign">start</property>
+                            <property name="margin-start">4</property>
+                            <property name="margin-end">4</property>
+                            <property name="hexpand">1</property>
+                            <property name="label" translatable="yes">E_xternal photo editor:</property>
+                            <property name="use_underline">1</property>
+                            <property name="mnemonic_widget">photo_editor_combo</property>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="label8">
+                            <property name="vexpand">1</property>
+                            <property name="halign">start</property>
+                            <property name="margin-start">4</property>
+                            <property name="margin-end">4</property>
+                            <property name="label" translatable="yes">External _RAW editor:</property>
+                            <property name="use_underline">1</property>
+                            <property name="mnemonic_widget">raw_editor_combo</property>
+                          </object>
+                        </child>
                       </object>
-                      <packing>
-                        <property name="expand">True</property>
-                        <property name="fill">True</property>
-                        <property name="position">0</property>
-                      </packing>
                     </child>
                     <child>
-                      <object class="GtkComboBox" id="raw_editor_combo">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                      <object class="GtkBox" id="vbox3">
+                        <property name="hexpand">1</property>
+                        <property name="orientation">vertical</property>
+                        <property name="spacing">6</property>
+                        <child>
+                          <object class="GtkComboBox" id="photo_editor_combo">
+                            <property name="vexpand">1</property>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkComboBox" id="raw_editor_combo">
+                            <property name="vexpand">1</property>
+                          </object>
+                        </child>
                       </object>
-                      <packing>
-                        <property name="expand">True</property>
-                        <property name="fill">True</property>
-                        <property name="position">1</property>
-                      </packing>
                     </child>
                   </object>
-                  <packing>
-                    <property name="expand">True</property>
-                    <property name="fill">True</property>
-                    <property name="position">1</property>
-                  </packing>
-                </child>
-              </object>
-              <packing>
-                <property name="position">1</property>
-              </packing>
-            </child>
-            <child type="tab">
-              <object class="GtkLabel" id="external-editors-tab">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="label" translatable="yes">External Editors</property>
+                </property>
+                <property name="tab">
+                  <object class="GtkLabel" id="external-editors-tab">
+                    <property name="label" translatable="yes">External Editors</property>
+                  </object>
+                </property>
               </object>
-              <packing>
-                <property name="position">1</property>
-                <property name="tab_fill">False</property>
-              </packing>
             </child>
             <child>
-              <object class="GtkBox">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="border_width">12</property>
-                <property name="orientation">vertical</property>
-                <child>
-                  <placeholder/>
-                </child>
-              </object>
-              <packing>
+              <object class="GtkNotebookPage">
                 <property name="position">2</property>
-              </packing>
-            </child>
-            <child type="tab">
-              <object class="GtkLabel" id="plugins-tab">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="label" translatable="yes">Plugins</property>
+                <property name="child">
+                  <object class="GtkBox">
+                    <property name="orientation">vertical</property>
+                    <child>
+                      <placeholder/>
+                    </child>
+                  </object>
+                </property>
+                <property name="tab">
+                  <object class="GtkLabel" id="plugins-tab">
+                    <property name="label" translatable="yes">Plugins</property>
+                  </object>
+                </property>
               </object>
-              <packing>
-                <property name="position">2</property>
-                <property name="tab_fill">False</property>
-              </packing>
             </child>
             <child>
               <placeholder/>
             </child>
-            <child type="tab">
-              <placeholder/>
-            </child>
           </object>
-          <packing>
-            <property name="expand">True</property>
-            <property name="fill">True</property>
-            <property name="position">1</property>
-          </packing>
         </child>
       </object>
     </child>
     <child type="titlebar">
       <object class="GtkHeaderBar" id="headerbar">
-        <property name="visible">True</property>
+        <property name="title-widget">
+          <object class="GtkLabel">
+            <property name="label" translatable="yes">Shotwell Preferences</property>
+            <property name="single-line-mode">True</property>
+            <property name="ellipsize">end</property>
+            <property name="width-chars">5</property>
+            <style>
+              <class name="title"/>
+            </style>
+          </object>          
+          </property>
+      </object>
+    </child>
+    <child internal-child="action_area">
+      <object class="GtkBox">
+        <property name="valign">center</property>
         <property name="can_focus">False</property>
-        <property name="title" translatable="yes">Shotwell Preferences</property>
-        <property name="show_close_button">True</property>
       </object>
     </child>
   </template>
diff --git a/meson.build b/meson.build
index 12f0adbd..495d2676 100644
--- a/meson.build
+++ b/meson.build
@@ -63,16 +63,11 @@ gudev = dependency('gudev-1.0', version : '>= 145', required: false)
 gexiv2 = dependency('gexiv2', version: '>= 0.12.3')
 libraw = dependency('libraw', version : '>= 0.13.2')
 libexif = dependency('libexif', version : '>= 0.6.16')
-unity = dependency('unity', required : false)
 secret = dependency('libsecret-1', required: true)
 pangocairo = dependency('pangocairo', required: true)
 webpdemux = dependency('libwebpdemux')
 webp = dependency('libwebp')
 
-if unity.found() and get_option('unity_support')
-  add_global_arguments(['--define=UNITY_SUPPORT'], language : 'vala')
-endif
-
 foreach publisher : get_option('publishers')
   add_global_arguments(['--define=HAVE_@0@'.format(publisher.to_upper())],
                        language : 'vala')
diff --git a/src/dialogs/Preferences.vala b/src/dialogs/Preferences.vala
index 200b76ce..78f87aa7 100644
--- a/src/dialogs/Preferences.vala
+++ b/src/dialogs/Preferences.vala
@@ -41,7 +41,7 @@ public class PreferencesDialog : Gtk.Dialog {
     private GLib.DateTime example_date = new GLib.DateTime.local(2009, 3, 10, 18, 16, 11);
     [GtkChild]
     private unowned Gtk.CheckButton lowercase;
-    private Plugins.ManifestWidgetMediator plugins_mediator = new Plugins.ManifestWidgetMediator();
+    //private Plugins.ManifestWidgetMediator plugins_mediator = new Plugins.ManifestWidgetMediator();
     [GtkChild]
     private unowned Gtk.ComboBoxText default_raw_developer_combo;
 
diff --git a/src/meson.build b/src/meson.build
index 5f29687a..6e6b4441 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -32,7 +32,7 @@ if get_option('face_detection')
 endif
 
 shotwell_deps = [gio, gee, sqlite, gtk, sqlite, posix, gphoto2,
-                 gstreamer_pbu, gio_unix, gudev, gexiv2, gmodule, unity,
+                 gstreamer_pbu, gio_unix, gudev, gexiv2, gmodule,
                  libraw, libexif, sw_plugin, webpdemux, webp, version, pangocairo ]
 
 subdir('metadata')
@@ -202,7 +202,6 @@ executable(
         'VideoMonitor.vala',
         'SearchFilter.vala',
         'MediaViewTracker.vala',
-        'UnityProgressBar.vala',
         'Upgrades.vala',
         'dialogs/AdjustDateTimeDialog.vala',
         'dialogs/EntryMultiCompletion.vala',


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