1247 lines
64 KiB
XML
1247 lines
64 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!-- Generated with glade 3.20.2 -->
|
|
<interface>
|
|
<requires lib="gtk+" version="3.20"/>
|
|
|
|
<object class="GtkSourceBuffer" id="msg_entry_buffer">
|
|
</object>
|
|
|
|
<object class="GtkApplicationWindow" id="main_window">
|
|
<property name="can_focus">False</property>
|
|
<property name="default_width">860</property>
|
|
<property name="default_height">640</property>
|
|
<property name="show_menubar">False</property>
|
|
<child>
|
|
<object class="GtkStack" id="main_content_stack">
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkBox" id="chat_state">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkBox" id="sidebar-box">
|
|
<property name="width_request">200</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="halign">start</property>
|
|
<property name="hexpand">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkSearchBar" id="room_list_searchbar">
|
|
<property name="width_request">200</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkSearchEntry" id="room_list_search">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="primary_icon_name">edit-find-symbolic</property>
|
|
<property name="primary_icon_activatable">False</property>
|
|
<property name="primary_icon_sensitive">False</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkScrolledWindow">
|
|
<property name="width_request">200</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="hscrollbar_policy">never</property>
|
|
<child>
|
|
<object class="GtkViewport">
|
|
<property name="width_request">200</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="shadow_type">none</property>
|
|
<child>
|
|
<object class="GtkBox" id="room_container">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<style>
|
|
<class name="rooms-sidebar"/>
|
|
<class name="sidebar"/>
|
|
</style>
|
|
</object>
|
|
</child>
|
|
</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">False</property>
|
|
<property name="fill">False</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkSeparator">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkOverlay" id="inapp">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkStack" id="room_view_stack">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkBox" id="focused_room">
|
|
<property name="name">room</property>
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkBox">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkOverlay">
|
|
<property name="visible">True</property>
|
|
<child>
|
|
<object class="GtkScrolledWindow" id="messages_scroll">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="hscrollbar_policy">never</property>
|
|
<property name="vscrollbar_policy">always</property>
|
|
<property name="window_placement">bottom-left</property>
|
|
<property name="min_content_width">300</property>
|
|
<property name="min_content_height">300</property>
|
|
<child>
|
|
<object class="GtkViewport">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="vscroll_policy">natural</property>
|
|
<property name="shadow_type">none</property>
|
|
<child>
|
|
<object class="GtkBox">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<style>
|
|
<class name="history-view"/>
|
|
</style>
|
|
<child>
|
|
<object class="GtkListBox" id="message_list">
|
|
<property name="width_request">300</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="vexpand">True</property>
|
|
<property name="valign">end</property>
|
|
<style>
|
|
<class name="messages-history"/>
|
|
</style>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
<child type="overlay">
|
|
<object class="GtkOverlay">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="valign">end</property>
|
|
<property name="halign">end</property>
|
|
<property name="margin_end">24</property>
|
|
<property name="margin_bottom">24</property>
|
|
<child>
|
|
<object class="GtkRevealer" id="scroll_btn_revealer">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="transition_type">crossfade</property>
|
|
<child>
|
|
<object class="GtkButton" id="scroll_btn">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">go-bottom-symbolic</property>
|
|
</object>
|
|
</child>
|
|
<child internal-child="accessible">
|
|
<object class="AtkObject" id="scroll_btn-atkobject">
|
|
<property name="AtkObject::accessible-name" translatable="yes">Scroll to bottom</property>
|
|
</object>
|
|
</child>
|
|
<style>
|
|
<class name="osd"/>
|
|
<class name="scroll_button"/>
|
|
</style>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="pass_through">False</property>
|
|
<property name="index">-1</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">True</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox" id="room_message_box">
|
|
<property name="can_focus">False</property>
|
|
<property name="spacing">6</property>
|
|
<style>
|
|
<class name="message-input-area"/>
|
|
</style>
|
|
<child>
|
|
<object class="GtkButton" id="attach_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<property name="valign">end</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">mail-attachment-symbolic</property>
|
|
</object>
|
|
</child>
|
|
<child internal-child="accessible">
|
|
<object class="AtkObject" id="attach_button-atkobject">
|
|
<property name="AtkObject::accessible-name" translatable="yes">Attach files</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkMenuButton" id="markdown_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<property name="valign">end</property>
|
|
<child>
|
|
<object class="GtkImage" id="md_img">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">format-justify-left-symbolic</property>
|
|
</object>
|
|
</child>
|
|
<accessibility>
|
|
|
|
</accessibility>
|
|
<child internal-child="accessible">
|
|
<object class="AtkObject" id="a11y-markdown_button">
|
|
<property name="AtkObject::accessible_name" translatable="yes">Text formatting</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox" id="msg_entry_box">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="orientation">vertical</property>
|
|
<style>
|
|
<class name="message-input"/>
|
|
</style>
|
|
<child>
|
|
<object class="GtkScrolledWindow" id="input_scroll">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="hscrollbar_policy">never</property>
|
|
<property name="vscrollbar_policy">external</property>
|
|
<property name="max_content_height">100</property>
|
|
<property name="propagate_natural_height">True</property>
|
|
<child>
|
|
<object class="GtkSourceView" id="msg_entry">
|
|
<property name="can_focus">True</property>
|
|
<property name="wrap_mode">word-char</property>
|
|
<property name="indent_on_tab">False</property>
|
|
<property name="buffer">msg_entry_buffer</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">True</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">True</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">2</property>
|
|
</packing>
|
|
</child>
|
|
<!--
|
|
<child>
|
|
<object class="GtkMenuButton" id="stickers_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<child>
|
|
<object class="GtkImage" id="stickers_img">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">face-wink-symbolic</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">3</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">True</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="name">room_view</property>
|
|
<property name="title">room_view</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkSpinner">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="active">True</property>
|
|
</object>
|
|
<packing>
|
|
<property name="name">loading</property>
|
|
<property name="title">loading</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<property name="margin_bottom">30</property>
|
|
<property name="valign">center</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="margin_bottom">16</property>
|
|
<property name="resource">/org/gnome/Fractal/icons/chat-icon.svg</property>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="label" translatable="yes">No room selected</property>
|
|
<property name="margin_bottom">3</property>
|
|
<property name="justify">center</property>
|
|
<attributes>
|
|
<attribute name="weight" value="bold"/>
|
|
</attributes>
|
|
<style>
|
|
<class name="noroom-title"/>
|
|
</style>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="label" translatable="yes">Join a room to start chatting</property>
|
|
<property name="justify">center</property>
|
|
<style>
|
|
<class name="noroom-description"/>
|
|
</style>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="name">noroom</property>
|
|
<property name="title" translatable="yes">No room</property>
|
|
<property name="position">2</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="index">-1</property>
|
|
</packing>
|
|
</child>
|
|
<child type="overlay">
|
|
<object class="GtkOverlay" id="inapp_notify">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="valign">start</property>
|
|
<property name="halign">center</property>
|
|
<child>
|
|
<object class="GtkRevealer" id="inapp_revealer">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="halign">center</property>
|
|
<child>
|
|
<object class="GtkFrame" id="inapp_frame">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="label_xalign">0</property>
|
|
<property name="shadow_type">none</property>
|
|
<child>
|
|
<object class="GtkBox" id="inapp_box">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="spacing">10</property>
|
|
<child>
|
|
<object class="GtkSpinner" id="inapp_spinner">
|
|
<property name="visible">True</property>
|
|
<property name="active">True</property>
|
|
<property name="can_focus">False</property>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel" id="inapp_label">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="label" translatable="yes">This is an app-notification</property>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="pack_type">end</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
<child type="label_item">
|
|
<placeholder/>
|
|
</child>
|
|
<style>
|
|
<class name="app-notification"/>
|
|
</style>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="pass_through">True</property>
|
|
<property name="index">-1</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">True</property>
|
|
<property name="fill">True</property>
|
|
<property name="pack_type">end</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="name">chat</property>
|
|
<property name="title" translatable="yes">Chat</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox" id="directory_state">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkScrolledWindow" id="directory_scroll">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="hscrollbar_policy">never</property>
|
|
<child>
|
|
<object class="GtkViewport">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkStack" id="directory_stack">
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkListBox" id="directory_room_list">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox" id="directory_spinner">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkSpinner">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="active">True</property>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">True</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</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="name">directory</property>
|
|
<property name="title" translatable="yes">Directory</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox" id="loading_state">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkSpinner">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="active">True</property>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">True</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="name">loading</property>
|
|
<property name="title" translatable="yes">Loading</property>
|
|
<property name="position">2</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox" id="login_state">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="halign">center</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkBox">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkGrid" id="login_grid">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="column_spacing">6</property>
|
|
<property name="column_homogeneous">True</property>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="margin_bottom">40</property>
|
|
<property name="label" translatable="yes" context="big label">Log In</property>
|
|
<attributes>
|
|
<attribute name="scale" value="4"/>
|
|
<attribute name="weight" value="ultralight"/>
|
|
</attributes>
|
|
<style>
|
|
<class name="dim-label"/>
|
|
</style>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">0</property>
|
|
<property name="top_attach">0</property>
|
|
<property name="width">4</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel" id="login_username_label">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="halign">end</property>
|
|
<property name="margin_bottom">6</property>
|
|
<property name="hexpand">True</property>
|
|
<property name="label" translatable="yes">Username</property>
|
|
<property name="justify">right</property>
|
|
<accessibility>
|
|
<relation type="label-for" target="login_username"/>
|
|
</accessibility>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">0</property>
|
|
<property name="top_attach">1</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkEntry" id="login_username">
|
|
<property name="width_request">330</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="margin_bottom">6</property>
|
|
<property name="placeholder_text" translatable="yes">Matrix username, email or phone number</property>
|
|
<accessibility>
|
|
<relation type="labelled-by" target="login_username_label"/>
|
|
</accessibility>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">1</property>
|
|
<property name="top_attach">1</property>
|
|
<property name="width">2</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkButton" id="login_button">
|
|
<property name="label" translatable="yes" context="login button">Log In</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<style>
|
|
<class name="suggested-action"/>
|
|
</style>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">2</property>
|
|
<property name="top_attach">5</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel" id="login_password_label">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="halign">end</property>
|
|
<property name="margin_bottom">6</property>
|
|
<property name="hexpand">True</property>
|
|
<property name="label" translatable="yes">Password</property>
|
|
<property name="justify">right</property>
|
|
<accessibility>
|
|
<relation type="label-for" target="login_password"/>
|
|
</accessibility>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">0</property>
|
|
<property name="top_attach">3</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkEntry" id="login_password">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="margin_bottom">6</property>
|
|
<property name="visibility">False</property>
|
|
<property name="invisible_char">●</property>
|
|
<property name="input_purpose">password</property>
|
|
<accessibility>
|
|
<relation type="labelled-by" target="login_password_label"/>
|
|
</accessibility>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">1</property>
|
|
<property name="top_attach">3</property>
|
|
<property name="width">2</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkRevealer" id="login_advanced">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<child>
|
|
<object class="GtkGrid">
|
|
<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="GtkLabel" id="login_server_label">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="halign">end</property>
|
|
<property name="hexpand">True</property>
|
|
<property name="label" translatable="yes">Home server URL</property>
|
|
<property name="justify">right</property>
|
|
<accessibility>
|
|
<relation type="label-for" target="login_server"/>
|
|
</accessibility>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">0</property>
|
|
<property name="top_attach">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel" id="login_idp_label">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="halign">end</property>
|
|
<property name="margin_bottom">6</property>
|
|
<property name="hexpand">True</property>
|
|
<property name="label" translatable="yes">Identity server URL</property>
|
|
<property name="justify">right</property>
|
|
<accessibility>
|
|
<relation type="label-for" target="login_idp"/>
|
|
</accessibility>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">0</property>
|
|
<property name="top_attach">1</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkEntry" id="login_server">
|
|
<property name="width_request">330</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="text"></property>
|
|
<property name="placeholder_text" translatable="yes">Matrix Server</property>
|
|
<property name="input_purpose">url</property>
|
|
<accessibility>
|
|
<relation type="labelled-by" target="login_server_label"/>
|
|
</accessibility>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">1</property>
|
|
<property name="top_attach">0</property>
|
|
<property name="width">2</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkEntry" id="login_idp">
|
|
<property name="width_request">330</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="margin_bottom">6</property>
|
|
<property name="text"></property>
|
|
<property name="placeholder_text" translatable="yes">Identity server</property>
|
|
<property name="input_purpose">url</property>
|
|
<accessibility>
|
|
<relation type="labelled-by" target="login_idp_label"/>
|
|
</accessibility>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">1</property>
|
|
<property name="top_attach">1</property>
|
|
<property name="width">2</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">0</property>
|
|
<property name="top_attach">2</property>
|
|
<property name="width">3</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkToggleButton" id="login_advanced_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<property name="halign">start</property>
|
|
<property name="margin_bottom">6</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">view-more-symbolic</property>
|
|
</object>
|
|
</child>
|
|
<child internal-child="accessible">
|
|
<object class="AtkObject" id="login_advanced_button-atkobject">
|
|
<property name="AtkObject::accessible-name" translatable="yes">Advanced</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">3</property>
|
|
<property name="top_attach">1</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel" id="login_error_msg">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="margin_top">10</property>
|
|
<property name="margin_bottom">10</property>
|
|
<property name="label" translatable="yes">Invalid username or password</property>
|
|
<attributes>
|
|
<attribute name="foreground" value="#efef29292929"/>
|
|
</attributes>
|
|
</object>
|
|
<packing>
|
|
<property name="left_attach">1</property>
|
|
<property name="top_attach">4</property>
|
|
<property name="width">2</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
<child>
|
|
<placeholder/>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">True</property>
|
|
<property name="fill">False</property>
|
|
<property name="position">0</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">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="spacing">6</property>
|
|
<property name="homogeneous">True</property>
|
|
<child>
|
|
<object class="GtkLinkButton">
|
|
<property name="label" translatable="yes">Reset Password</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<property name="uri">https://riot.im/app/#/login</property>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLinkButton">
|
|
<property name="label" translatable="yes">Create Account</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<property name="uri">https://riot.im/app/#/register</property>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLinkButton">
|
|
<property name="label" translatable="yes">Log In as Guest</property>
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<property name="uri">https://riot.im/app/</property>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">2</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="name">login</property>
|
|
<property name="title" translatable="yes">Login</property>
|
|
<property name="position">3</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
<child type="titlebar">
|
|
<object class="GtkStack" id="headerbar_stack">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="hexpand">True</property>
|
|
<child>
|
|
<object class="GtkBox"> <!--message view-->
|
|
<property name="visible">True</property>
|
|
<child>
|
|
<object class="GtkHeaderBar" id="left-header"> <!--left titlebar-->
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<!--<property name="show-close-button">True</property>-->
|
|
<child>
|
|
<object class="GtkMenuButton" id="user_menu_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<property name="popover">user_popover</property>
|
|
<child>
|
|
<object class="GtkSpinner">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="active">True</property>
|
|
</object>
|
|
</child>
|
|
<accessibility>
|
|
|
|
</accessibility>
|
|
<child internal-child="accessible">
|
|
<object class="AtkObject" id="a11y-user_menu_button">
|
|
<property name="AtkObject::accessible_name" translatable="yes">User</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkMenuButton" id="add_room_menu">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<property name="popover">add_room_popover</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">list-add-symbolic</property>
|
|
</object>
|
|
</child>
|
|
<accessibility>
|
|
|
|
</accessibility>
|
|
<child internal-child="accessible">
|
|
<object class="AtkObject" id="a11y-add_room_menu">
|
|
<property name="AtkObject::accessible_name" translatable="yes">Add</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="pack_type">end</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
|
|
<child>
|
|
<object class="GtkToggleButton" id="room_search_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">system-search-symbolic</property>
|
|
</object>
|
|
</child>
|
|
<accelerator key="k" signal="activate" modifiers="GDK_CONTROL_MASK"/>
|
|
<style>
|
|
<class name="room-search-button"/>
|
|
</style>
|
|
<accessibility>
|
|
|
|
</accessibility>
|
|
<child internal-child="accessible">
|
|
<object class="AtkObject" id="a11y-room_search_button">
|
|
<property name="AtkObject::accessible_name" translatable="yes">Room search</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="pack_type">end</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkSeparator">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkHeaderBar" id="room_header_bar"> <!--right titlebar-->
|
|
<property name="show-close-button">True</property>
|
|
<property name="has-subtitle">False</property>
|
|
<property name="hexpand">True</property>
|
|
<child type="title">
|
|
<object class="GtkBox" id="room_info">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="valign">fill</property>
|
|
<property name="hexpand">True</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkLabel" id="room_name">
|
|
<property name="can_focus">False</property>
|
|
<property name="label" translatable="yes">Room name</property>
|
|
<property name="ellipsize">end</property>
|
|
<style>
|
|
<class name="title"/>
|
|
</style>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel" id="room_topic">
|
|
<property name="can_focus">False</property>
|
|
<property name="label" translatable="yes">Room topic</property>
|
|
<property name="ellipsize">end</property>
|
|
<style>
|
|
<class name="subtitle"/>
|
|
</style>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkMenuButton" id="room_menu_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<property name="popover">room_popover</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">view-more-symbolic</property>
|
|
</object>
|
|
</child>
|
|
<accessibility>
|
|
</accessibility>
|
|
<child internal-child="accessible">
|
|
<object class="AtkObject" id="a11y-room_menu_button">
|
|
<property name="AtkObject::accessible_name" translatable="yes">Room Menu</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="pack_type">end</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="name">normal</property>
|
|
<property name="title">normal</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox"> <!--login titlebar-->
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkHeaderBar">
|
|
<property name="can_focus">False</property>
|
|
<property name="show-close-button">True</property>
|
|
<property name="title">Fractal</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="name">login</property>
|
|
<property name="title">login</property>
|
|
<property name="position">1</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="GtkHeaderBar">
|
|
<property name="can_focus">False</property>
|
|
<property name="show_close_button">True</property>
|
|
<child>
|
|
<object class="GtkButton" id="back_button">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">go-previous-symbolic</property>
|
|
</object>
|
|
</child>
|
|
<child internal-child="accessible">
|
|
<object class="AtkObject" id="back_button-atkobject">
|
|
<property name="AtkObject::accessible-name" translatable="yes">Back</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
<child type="title">
|
|
<object class="GtkSearchEntry" id="directory_search_entry">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="width_chars">30</property>
|
|
<property name="primary_icon_name">edit-find-symbolic</property>
|
|
<property name="primary_icon_activatable">False</property>
|
|
<property name="primary_icon_sensitive">False</property>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkMenuButton" id="server_chooser_menu">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">True</property>
|
|
<property name="receives_default">True</property>
|
|
<property name="popover">server_chooser_popover</property>
|
|
<child>
|
|
<object class="GtkBox">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="spacing">6</property>
|
|
<child>
|
|
<object class="GtkLabel" id="directory_choice_label">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="label" translatable="yes">Default Matrix Server</property>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">0</property>
|
|
</packing>
|
|
</child>
|
|
<child>
|
|
<object class="GtkImage">
|
|
<property name="visible">True</property>
|
|
<property name="can_focus">False</property>
|
|
<property name="icon_name">pan-down-symbolic</property>
|
|
</object>
|
|
<packing>
|
|
<property name="expand">False</property>
|
|
<property name="fill">True</property>
|
|
<property name="position">1</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
<packing>
|
|
<property name="pack_type">end</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>
|
|
</object>
|
|
<packing>
|
|
<property name="name">back</property>
|
|
<property name="title" translatable="yes">Back</property>
|
|
<property name="position">2</property>
|
|
</packing>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
<style>
|
|
<class name="main-window"/>
|
|
</style>
|
|
</object>
|
|
|
|
<!-- Synchronize left header and sidebar -->
|
|
<object class="GtkSizeGroup">
|
|
<property name="mode">horizontal</property>
|
|
<widgets>
|
|
<widget name="left-header"/>
|
|
<widget name="sidebar-box"/>
|
|
</widgets>
|
|
</object>
|
|
|
|
|
|
</interface>
|