Authenticator/data/resources/ui/window.ui
Bilal Elmoussaoui 6b6921de16 Mark main menu as primary
Fixes #361
2023-04-07 01:45:13 +02:00

307 lines
17 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<interface>
<menu id="menu">
<section>
<item>
<attribute name="label" translatable="yes">_Lock the Application</attribute>
<attribute name="action">app.lock</attribute>
</item>
</section>
<section>
<item>
<attribute name="label" translatable="yes">P_roviders</attribute>
<attribute name="action">app.providers</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Preferences</attribute>
<attribute name="action">app.preferences</attribute>
</item>
</section>
<section>
<item>
<attribute name="label" translatable="yes">_Keyboard Shortcuts</attribute>
<attribute name="action">win.show-help-overlay</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_About Authenticator</attribute>
<attribute name="action">app.about</attribute>
</item>
</section>
</menu>
<template class="Window" parent="AdwApplicationWindow">
<property name="default-width">720</property>
<property name="default-height">600</property>
<property name="title" translatable="yes">Authenticator</property>
<child>
<object class="GtkGestureClick" id="click_gesture">
<signal handler="on_gesture_click_pressed" name="pressed" swapped="true" />
</object>
</child>
<child>
<object class="GtkEventControllerKey" id="key_gesture">
<signal handler="on_key_pressed" name="key-pressed" swapped="true" />
</object>
</child>
<child>
<object class="AdwToastOverlay" id="toast_overlay">
<property name="child">
<object class="GtkStack" id="main_stack">
<property name="transition-type">crossfade</property>
<child>
<object class="GtkStackPage">
<property name="name">login</property>
<property name="child">
<object class="GtkWindowHandle">
<child>
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="GtkBox">
<child>
<object class="GtkWindowControls">
<property name="side">start</property>
<property name="halign">start</property>
<property name="hexpand">true</property>
<property name="margin-top">9</property>
<property name="margin-bottom">6</property>
<property name="margin-start">6</property>
</object>
</child>
<child>
<object class="GtkWindowControls">
<property name="side">end</property>
<property name="halign">end</property>
<property name="hexpand">true</property>
<property name="margin-top">9</property>
<property name="margin-bottom">6</property>
<property name="margin-end">6</property>
</object>
</child>
</object>
</child>
<child>
<object class="GtkBox">
<property name="halign">center</property>
<property name="valign">center</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<property name="spacing">24</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkImage" id="locked_img">
<property name="halign">center</property>
<property name="hexpand">True</property>
<property name="pixel-size">128</property>
</object>
</child>
<child>
<object class="GtkLabel">
<property name="halign">center</property>
<property name="margin-top">12</property>
<property name="label" translatable="yes">Authenticator is Locked</property>
<style>
<class name="large-title" />
</style>
</object>
</child>
<child>
<object class="GtkBox">
<property name="halign">center</property>
<property name="valign">start</property>
<property name="margin-top">24</property>
<property name="hexpand">True</property>
<property name="vexpand">True</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkPasswordEntry" id="password_entry">
<property name="halign">center</property>
<property name="show-peek-icon">True</property>
<signal name="activate" handler="on_password_entry_activate" swapped="true" />
</object>
</child>
<child>
<object class="ErrorRevealer" id="error_revealer">
<property name="margin-top">6</property>
</object>
</child>
<child>
<object class="GtkButton" id="unlock_button">
<property name="label" translatable="yes">_Unlock</property>
<property name="use-underline">True</property>
<property name="action-name">win.unlock</property>
<property name="receives-default">True</property>
<property name="halign">center</property>
<property name="margin-top">12</property>
<style>
<class name="suggested-action" />
<class name="pill" />
</style>
</object>
</child>
</object>
</child>
</object>
</child>
</object>
</child>
</object>
</property>
</object>
</child>
<child>
<object class="GtkStackPage">
<property name="name">unlocked</property>
<property name="child">
<object class="AdwLeaflet" id="deck">
<property name="can-unfold">False</property>
<property name="can-navigate-back">True</property>
<child>
<object class="AdwLeafletPage">
<property name="name">accounts</property>
<property name="child">
<object class="GtkStack" id="accounts_stack">
<property name="transition-type">crossfade</property>
<child>
<object class="GtkStackPage">
<property name="name">empty</property>
<property name="child">
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="GtkHeaderBar">
<property name="show-title-buttons">True</property>
<child type="start">
<object class="GtkButton">
<property name="action-name">win.add_account</property>
<property name="icon-name">list-add-symbolic</property>
<property name="tooltip-text" translatable="yes">New Account</property>
</object>
</child>
<child type="end">
<object class="GtkMenuButton">
<property name="menu-model">menu</property>
<property name="icon-name">open-menu-symbolic</property>
<property name="primary">True</property>
<property name="tooltip-text" translatable="yes">Main Menu</property>
</object>
</child>
<style>
<class name="titlebar" />
</style>
</object>
</child>
<child>
<object class="AdwStatusPage" id="empty_status_page">
<property name="vexpand">True</property>
<property name="title" translatable="yes">No Accounts</property>
<property name="description" translatable="yes">Add an account or scan a QR code first.</property>
</object>
</child>
</object>
</property>
</object>
</child>
<child>
<object class="GtkStackPage">
<property name="name">accounts</property>
<property name="child">
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="GtkHeaderBar">
<property name="show-title-buttons">True</property>
<child type="start">
<object class="GtkButton">
<property name="action-name">win.add_account</property>
<property name="icon-name">list-add-symbolic</property>
<property name="tooltip-text" translatable="yes">New Account</property>
</object>
</child>
<child type="title">
<object class="GtkStack" id="title_stack">
<property name="hexpand">True</property>
<property name="transition-type">crossfade</property>
<child>
<object class="GtkStackPage">
<property name="name">title</property>
<property name="child">
<object class="AdwWindowTitle" id="window_title">
<property name="title" bind-source="Window" bind-property="title" bind-flags="bidirectional|sync-create" />
</object>
</property>
</object>
</child>
<child>
<object class="GtkStackPage">
<property name="name">search</property>
<property name="child">
<object class="AdwClamp">
<property name="tightening-threshold">300</property>
<property name="maximum-size">400</property>
<property name="child">
<object class="GtkSearchEntry" id="search_entry">
<signal name="search-started" handler="on_search_started" swapped="true" />
<signal name="search-changed" handler="on_search_changed" swapped="true" />
<signal name="stop-search" handler="on_search_stopped" swapped="true" />
</object>
</property>
</object>
</property>
</object>
</child>
</object>
</child>
<child type="end">
<object class="GtkMenuButton">
<property name="menu-model">menu</property>
<property name="icon-name">open-menu-symbolic</property>
<property name="primary">True</property>
<property name="tooltip-text" translatable="yes">Main Menu</property>
</object>
</child>
<child type="end">
<object class="GtkToggleButton" id="search_btn">
<property name="icon-name">system-search-symbolic</property>
<property name="tooltip-text" translatable="yes">Search</property>
<signal name="toggled" handler="on_search_btn_toggled" swapped="true" />
</object>
</child>
<style>
<class name="titlebar" />
</style>
</object>
</child>
<child>
<object class="ProvidersList" id="providers">
<signal name="shared" handler="on_account_shared" swapped="true" />
</object>
</child>
</object>
</property>
</object>
</child>
</object>
</property>
</object>
</child>
<child>
<object class="AdwLeafletPage">
<property name="name">account</property>
<property name="child">
<object class="AccountDetailsPage" id="account_details">
<signal name="provider-changed" handler="on_provider_changed" swapped="true" />
<signal name="removed" handler="on_account_removed" swapped="true" />
</object>
</property>
</object>
</child>
</object>
</property>
</object>
</child>
</object>
</property>
</object>
</child>
</template>
</interface>