<?xml version="1.0" encoding="UTF-8"?>
<interface>
  <requires lib="gtk" version="4.0"/>
  <template class="DinoUiJoinChannelChannelSelectionPage">
    <child>
      <object class="GtkBox">
        <property name="orientation">vertical</property>
        <child>
          <object class="AdwHeaderBar" id="header_bar">
            <style>
              <class name="flat"/>
            </style>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <property name="orientation">vertical</property>
            <property name="spacing">8</property>
            <child>
              <object class="GtkSearchEntry" id="search_entry">
                <property name="placeholder-text" translatable="true">Search for channels or enter an XMPP address</property>
                <property name="margin-start">16</property>
                <property name="margin-end">16</property>
<!--                <signal name="search-changed" object="list" handler="dino_ui_join_room_dialog_view_model_on_search_changed" />-->
              </object>
            </child>
            <child>
              <object class="GtkStack">
                <binding name="visible-child-name">
                  <lookup name="stack_page">
                    <lookup name="model">DinoUiJoinChannelChannelSelectionPage</lookup>
                  </lookup>
                </binding>
                <child>
                  <object class="GtkStackPage">
                    <property name="name">channels</property>
                    <property name="child">
                      <object class="GtkScrolledWindow">
                        <property name="vexpand">True</property>
                        <style>
                          <class name="undershoot-top"/>
                        </style>
                        <child>
<!--                  We put a box around this such that the card isn't rounded at the bottom but continues, because of interactions between ScrolledWindow and ListView-->
<!--                          <object class="GtkBox">-->
<!--                            <property name="orientation">vertical</property>-->
<!--                            <child>-->
                              <object class="GtkListView" id="bookmarks_list">
                                <property name="margin-start">16</property>
                                <property name="margin-end">16</property>
                                <property name="margin-top">8</property>
                                <property name="margin-bottom">16</property>
                                <binding name="model">
                                  <lookup name="bookmarks">
                                    <lookup name="model">DinoUiJoinChannelChannelSelectionPage</lookup>
                                  </lookup>
                                </binding>
                                <property name="single-click-activate">True</property>
                                <property name="show-separators">True</property>
                                <property name="valign">start</property>
                                <style>
                                  <class name="card"/>
                                </style>
                                <property name="factory">
                                  <object class="GtkBuilderListItemFactory">
                                    <property name="resource">/im/dino/Dino/room_list_row.ui</property>
                                  </object>
                                </property>
                              </object>
<!--                            </child>-->
<!--                          </object>-->
                        </child>
                      </object>
                    </property>
                  </object>
                </child>
                <child>
                  <object class="GtkStackPage">
                    <property name="name">direct-match</property>
                    <property name="child">
                      <object class="GtkListView" id="direct_match_list">
                        <binding name="model">
                          <lookup name="direct-match">
                            <lookup name="model">DinoUiJoinChannelChannelSelectionPage</lookup>
                          </lookup>
                        </binding>
                        <property name="single-click-activate">True</property>
                        <property name="show-separators">True</property>
                        <property name="valign">start</property>
                        <property name="margin-start">16</property>
                        <property name="margin-end">16</property>
                        <property name="margin-top">8</property>
                        <property name="margin-bottom">16</property>
                        <style>
                          <class name="card"/>
                        </style>
                        <property name="factory">
                          <object class="GtkBuilderListItemFactory">
                            <property name="resource">/im/dino/Dino/room_list_row.ui</property>
                          </object>
                        </property>
                      </object>
                    </property>
                  </object>
                </child>
                <child>
                  <object class="GtkStackPage">
                    <property name="name">loading</property>
                    <property name="child">
                      <object class="GtkSpinner">
                        <property name="spinning">True</property>
                        <property name="valign">center</property>
                        <property name="halign">center</property>
                      </object>
                    </property>
                  </object>
                </child>
                <child>
                  <object class="GtkStackPage">
                    <property name="name">no-results</property>
                    <property name="child">
                      <object class="AdwStatusPage">
                        <property name="icon-name">face-uncertain-symbolic</property>
                        <property name="title" translatable="yes">No channels found</property>
                        <property name="description" translatable="yes">None of your bookmarks matches your search and the XMPP address could not be resolved.</property>
                      </object>
                    </property>
                  </object>
                </child>
                <child>
                  <object class="GtkStackPage">
                    <property name="name">no-channels</property>
                    <property name="child">
                      <object class="AdwStatusPage">
                        <property name="icon-name">im.dino.Dino-symbolic</property>
                        <property name="title" translatable="yes">No known channels</property>
                        <property name="description" translatable="yes">Discover new channels or enter an XMPP address!</property>
                      </object>
                    </property>
                  </object>
                </child>
                <child>
                  <object class="GtkStackPage">
                    <property name="name">offline</property>
                    <property name="child">
                      <object class="AdwStatusPage">
                        <property name="icon-name">im.dino.Dino-symbolic</property>
                        <property name="title" translatable="yes">You are offline</property>
                      </object>
                    </property>
                  </object>
                </child>
              </object>
            </child>
          </object>
        </child>
      </object>
    </child>
  </template>
</interface>