<?xml version="1.0" encoding="UTF-8"?>
<interface domain="io.github.swanux.hbud">
  <requires lib="libadwaita" version="1.1"/>
  <requires lib="gtk" version="4.6"/>

  <template class="PrefWin" parent="AdwPreferencesWindow">
    <property name="name">prefwin</property>
    <child>
      <object class="AdwPreferencesPage">
        <property name="title" translatable="yes">General</property>
        <property name="icon-name">user-home-symbolic</property>
        <child>
          <object class="AdwPreferencesGroup">
            <property name="title" translatable="yes">Appearance</property>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Theme</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Theme</property>
                    <child>
                      <object class="GtkComboBoxText" id="_darkew">
                        <property name="valign">center</property>
                        <items>
                        <item id="0" translatable="yes">System</item>
                        <item id="1" translatable="yes">Dark</item>
                        <item id="2" translatable="yes">Light</item>
                        </items>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Accent Color</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Accent Color</property>
                    <property name="icon-name">color-select-symbolic</property>
                    <child>
                      <object class="GtkColorButton" id="_colorer">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Video Overlay Controls Opacity</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Video Overlay Controls Opacity</property>
                    <property name="subtitle" translatable="yes">Default is 7</property>
                    <child>
                      <object class="GtkSpinButton" id="_opac_spin">
                        <property name="valign">center</property>
                        <property name="adjustment">
                          <object class="GtkAdjustment">
                            <property name="lower">0</property>
                            <property name="upper">10</property>
                            <property name="step_increment">1</property>
                          </object>
                        </property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Background Blur</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Background Blur</property>
                    <child>
                      <object class="GtkComboBoxText" id="_blurmode">
                        <property name="valign">center</property>
                        <items>
                        <item id="135" translatable="yes">Solid</item>
                        <item id="55" translatable="yes">Soft</item>
                        <item id="0" translatable="yes">Off</item>
                        </items>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
          </object>
        </child>
        
        <child>
          <object class="AdwPreferencesGroup">
            <property name="title" translatable="yes">Subtitles</property>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Size</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Size</property>
                    <property name="subtitle" translatable="yes">Default is 30</property>
                    <child>
                      <object class="GtkSpinButton" id="_sub_spin">
                        <property name="valign">center</property>
                        <property name="adjustment">
                          <object class="GtkAdjustment">
                            <property name="lower">10</property>
                            <property name="upper">99</property>
                            <property name="step_increment">1</property>
                          </object>
                        </property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Margin</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Margin</property>
                    <property name="subtitle" translatable="yes">Default is 66</property>
                    <child>
                      <object class="GtkSpinButton" id="_sub_marspin">
                        <property name="valign">center</property>
                        <property name="adjustment">
                          <object class="GtkAdjustment">
                            <property name="lower">10</property>
                            <property name="upper">99</property>
                            <property name="step_increment">1</property>
                          </object>
                        </property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Dark Background</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Dark Background</property>
                    <child>
                      <object class="GtkSwitch" id="_bg_switch">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
          </object>
        </child>
        
        <child>
          <object class="AdwPreferencesGroup">
            <property name="title" translatable="yes">Services</property>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">MusixMatch</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">MusixMatch</property>
                    <child>
                      <object class="GtkSwitch" id="_mus_switch">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">AZLyrics</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">AZLyrics</property>
                    <child>
                      <object class="GtkSwitch" id="_az_switch">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">Letras.mus.br</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">Letras.mus.br</property>
                    <child>
                      <object class="GtkSwitch" id="_letr_switch">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Preferred Album Cover Quality</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Preferred Album Cover Quality</property>
                    <property name="subtitle" translatable="yes">Default is High</property>
                    <child>
                      <object class="GtkComboBoxText" id="_combo_size">
                        <property name="valign">center</property>
                        <items>
                        <item id="1200" translatable="yes">Ultra High (1200px)</item>
                        <item id="500" translatable="yes">High (500px)</item>
                        <item id="250" translatable="yes">Normal (250px)</item>
                        </items>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
          </object>
        </child>
        
        <child>
          <object class="AdwPreferencesGroup">
            <property name="title" translatable="yes">Behavior</property>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Auto-scroll</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Auto-scroll</property>
                    <property name="subtitle" translatable="yes">Automatically scroll to make the current song visible - might be useful, but might be annoying</property>
                    <child>
                      <object class="GtkSwitch" id="_scroll_check">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Auto-scroll Positioning</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Auto-scroll Positioning</property>
                    <property name="subtitle" translatable="yes">Default is 5 - increase to make the current song appear further down on the screen</property>
                    <child>
                      <object class="GtkSpinButton" id="_scroll_spin">
                        <property name="valign">center</property>
                        <property name="adjustment">
                          <object class="GtkAdjustment">
                            <property name="lower">5</property>
                            <property name="upper">250</property>
                            <property name="step_increment">1</property>
                          </object>
                        </property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Minimal Mode</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Minimal Mode</property>
                    <property name="subtitle" translatable="yes">A minimal player mode, better performance and less distraction
Note: The window will be refreshed after state change</property>
                    <child>
                      <object class="GtkSwitch" id="_lite_switch">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Hardware Acceleration</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Hardware Acceleration</property>
                    <property name="subtitle" translatable="yes">Whether to use VA for HW acceleration or not
Note: Turning this off may result in increased stability but worse performance</property>
                    <child>
                      <object class="GtkSwitch" id="_hwa_switch">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title" translatable="yes">Clear Cache</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title" translatable="yes">Clear Cache</property>
                    <property name="subtitle" translatable="yes">Clear cached album cover images to free up space</property>
                    <child>
                      <object class="GtkButton" id="_clear_cache">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
          </object>
        </child>
      </object>
    </child>

    <child>
      <object class="AdwPreferencesPage">
        <property name="title" translatable="yes">System Info</property>
        <property name="icon-name">applications-engineering-symbolic</property>
        <child>
          <object class="AdwPreferencesGroup">
            <property name="title" translatable="yes">Library Versions</property>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">GTK</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">GTK</property>
                    <child>
                      <object class="GtkLabel" id="_gtk_ver">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">GStreamer</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">GStreamer</property>
                    <child>
                      <object class="GtkLabel" id="_gst_ver">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">LibAdwaita</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">LibAdwaita</property>
                    <child>
                      <object class="GtkLabel" id="_adw_ver">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">Python</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">Python</property>
                    <child>
                      <object class="GtkLabel" id="_py_ver">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
          </object>
        </child>

        <child>
          <object class="AdwPreferencesGroup">
            <property name="title" translatable="yes">Hardware Decoding</property>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">vah264dec</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">vah264dec</property>
                    <child>
                      <object class="GtkImage" id="_vah264dec">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">vah265dec</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">vah265dec</property>
                    <child>
                      <object class="GtkImage" id="_vah265dec">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">vampeg2dec</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">vampeg2dec</property>
                    <child>
                      <object class="GtkImage" id="_vampeg2dec">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">vaav1dec</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">vaav1dec</property>
                    <child>
                      <object class="GtkImage" id="_vaav1dec">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">vavp8dec</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">vavp8dec</property>
                    <child>
                      <object class="GtkImage" id="_vavp8dec">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
            <child>
              <object class="AdwPreferencesRow">
                <property name="title">vavp9dec</property>
                <property name="child">
                  <object class="AdwActionRow">
                    <property name="title">vavp9dec</property>
                    <child>
                      <object class="GtkImage" id="_vavp9dec">
                        <property name="valign">center</property>
                      </object>
                    </child>
                  </object>
                </property>
              </object>
            </child>
          </object>
        </child>
      </object>
    </child>
  </template>
</interface>