rino/src/window/window.ui
Emmanuel Gil Peyrot 5824275f06 Implement a login page
That way we connect only after the UI is created.
2024-06-04 18:10:53 +02:00

160 lines
6.7 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<interface>
<template class="MainWindow" parent="AdwApplicationWindow">
<property name="title" translatable="yes">XMPP Client</property>
<property name="width-request">360</property>
<property name="height-request">200</property>
<property name="default-width">640</property>
<property name="default-height">400</property>
<child>
<object class="AdwBreakpoint">
<condition>max-width: 400sp</condition>
<setter object="split_view" property="collapsed">True</setter>
</object>
</child>
<property name="content">
<object class="GtkStack" id="stack">
<child>
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="AdwHeaderBar"/>
</child>
<child>
<object class="AdwClamp">
<child>
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="AdwPreferencesGroup">
<property name="title" translatable="yes">Enter your XMPP credentials</property>
<child>
<object class="AdwEntryRow" id="jid">
<property name="title" translatable="yes">JID</property>
<property name="input-purpose">email</property>
</object>
</child>
<child>
<object class="AdwPasswordEntryRow" id="password">
<property name="title" translatable="yes">Password</property>
<property name="input-purpose">password</property>
</object>
</child>
</object>
</child>
<child>
<object class="GtkButton" id="login">
<property name="label" translatable="yes">Login</property>
<property name="css-classes">suggested-action</property>
<property name="margin-top">8</property>
</object>
</child>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="GtkBox" id="spinner">
<property name="orientation">vertical</property>
<child>
<object class="AdwHeaderBar"/>
</child>
<child>
<object class="GtkLabel">
<property name="label">Connecting…</property>
</object>
</child>
<child>
<object class="GtkSpinner">
<property name="spinning">yes</property>
<property name="vexpand">no</property>
</object>
</child>
</object>
</child>
<child>
<object class="AdwNavigationSplitView" id="split_view">
<property name="sidebar">
<object class="AdwNavigationPage">
<property name="title" translatable="yes">Open Chats</property>
<property name="child">
<object class="AdwToolbarView">
<child type="top">
<object class="AdwHeaderBar"/>
</child>
<property name="content">
<object class="GtkScrolledWindow">
<property name="vexpand">yes</property>
<child>
<object class="GtkListView" id="tabs_list">
<property name="model">tabs_selection</property>
</object>
</child>
</object>
</property>
</object>
</property>
</object>
</property>
<property name="content">
<object class="AdwNavigationPage">
<property name="title" translatable="yes">Messages</property>
<property name="tag">chat</property>
<property name="child">
<object class="AdwToolbarView">
<child type="top">
<object class="AdwHeaderBar"/>
</child>
<property name="content">
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="GtkScrolledWindow">
<property name="vexpand">yes</property>
<child>
<object class="GtkListView" id="message_list_view">
<property name="model">selection</property>
</object>
</child>
</object>
</child>
<child>
<object class="GtkBox">
<property name="margin-start">10</property>
<property name="margin-top">10</property>
<property name="margin-end">10</property>
<property name="margin-bottom">10</property>
<child>
<object class="GtkEntry" id="entry">
<property name="hexpand">yes</property>
<property name="placeholder-text" translatable="yes">Send a message</property>
<property name="input-purpose">free-form</property>
</object>
</child>
<!--
<child>
<object class="GtkButton" id="send_input">
<property name="icon-name">go-next</property>
</object>
</child>
-->
</object>
</child>
</object>
</property>
</object>
</property>
</object>
</property>
</object>
</child>
</object>
</property>
</template>
<object class="GListStore" id="tabs_store"/>
<object class="GtkSingleSelection" id="tabs_selection"/>
<object class="GtkNoSelection" id="selection"/>
</interface>