gnome-control-center/panels/user-accounts/cc-user-panel.ui
Mpho Jele 272b73795d user-accounts: Make back button switch to current user or panels list
When the window AdwLeaflet is folded the back button should either
switch to the panels list if the selected user is the current user
or switch to the current user if the selected user is from the
"other users" list
2022-07-24 15:29:46 +00:00

407 lines
21 KiB
XML

<interface>
<object class="GtkListStore" id="shortname-model">
<columns>
<!-- column-name gchararray -->
<column type="gchararray"/>
</columns>
</object>
<object class="GtkListStore" id="language-model">
<columns>
<!-- column-name gchararray -->
<column type="gchararray"/>
<!-- column-name gchararray1 -->
<column type="gchararray"/>
</columns>
</object>
<template class="CcUserPanel" parent="CcPanel">
<child type="titlebar">
<object class="AdwHeaderBar">
<property name="show-end-title-buttons">True</property>
<property name="show-start-title-buttons">False</property>
<property name="title-widget">
<object class="AdwWindowTitle">
<property name="title" translatable="yes">Users</property>
</object>
</property>
<child type="start">
<object class="GtkButton" id="back_button">
<property name="visible">False</property>
<property name="icon-name">go-previous-symbolic</property>
<accessibility>
<property name="label" translatable="yes">Back</property>
</accessibility>
<signal name="clicked" handler="on_back_button_clicked_cb" object="CcUserPanel" swapped="yes"/>
</object>
</child>
</object>
</child>
<child type="content">
<object class="GtkBox">
<property name="orientation">vertical</property>
<child>
<object class="CcPermissionInfobar" id="permission_infobar"/>
</child>
<child>
<object class="GtkStack" id="stack">
<property name="visible-child">no_users_box</property>
<child>
<object class="GtkOverlay" id="users_overlay">
<child type="overlay">
<object class="GtkRevealer" id="notification_revealer">
<property name="halign">GTK_ALIGN_CENTER</property>
<property name="valign">GTK_ALIGN_START</property>
<child>
<object class="GtkBox">
<property name="spacing">6</property>
<style>
<class name="app-notification"/>
</style>
<child>
<object class="GtkLabel">
<property name="wrap">True</property>
<property name="max_width_chars">30</property>
<property name="label" translatable="yes">Your session needs to be restarted for changes to take effect</property>
</object>
</child>
<child>
<object class="GtkButton">
<property name="can_focus">True</property>
<property name="valign">GTK_ALIGN_CENTER</property>
<property name="label" translatable="yes">Restart Now</property>
<signal name="clicked" handler="restart_now" object="CcUserPanel" swapped="yes"/>
</object>
</child>
<child>
<object class="GtkButton" id="dismiss_button">
<property name="valign">GTK_ALIGN_CENTER</property>
<property name="icon_name">window-close-symbolic</property>
<accessibility>
<property name="label" translatable="yes">Close</property>
</accessibility>
<signal name="clicked" handler="dismiss_notification" object="CcUserPanel" swapped="yes"/>
<style>
<class name="flat"/>
</style>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="AdwPreferencesPage">
<child>
<object class="AdwPreferencesGroup">
<child>
<object class="GtkOverlay">
<property name="halign">center</property>
<child>
<object class="AdwAvatar" id="user_avatar">
<property name="show-initials">True</property>
<property name="size">120</property>
<property name="halign">center</property>
</object>
</child>
<child type="overlay">
<object class="AdwBin">
<style>
<class name="cutout-button"/>
</style>
<property name="halign">end</property>
<property name="valign">end</property>
<child>
<object class="GtkMenuButton" id="user_avatar_edit_button">
<property name="sensitive">False</property>
<property name="icon-name">document-edit-symbolic</property>
<property name="popover">
<object class="CcAvatarChooser" id="avatar_chooser"/>
</property>
<accessibility>
<property name="label" translatable="yes">Edit avatar</property>
</accessibility>
<style>
<class name="circular"/>
</style>
</object>
</child>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="AdwPreferencesGroup" id="authentication_and_login_box">
<child>
<object class="AdwActionRow">
<property name="title" translatable="yes">Name</property>
<child>
<object class="GtkStack" id="full_name_stack">
<property name="hhomogeneous">False</property>
<child>
<object class="GtkLabel" id="full_name_label">
</object>
</child>
<child>
<object class="GtkEntry" id="full_name_entry">
<property name="max-length">255</property>
<property name="width-chars">18</property>
<property name="max-width-chars">30</property>
<property name="valign">GTK_ALIGN_CENTER</property>
<accessibility>
<property name="label" translatable="yes">Full name</property>
</accessibility>
<signal name="activate" handler="full_name_entry_activate" object="CcUserPanel" swapped="yes"/>
<child>
<object class="GtkEventControllerKey">
<property name="propagation-phase">capture</property>
<signal name="key-pressed" handler="full_name_entry_key_press_cb" object="CcUserPanel" swapped="no"/>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="GtkToggleButton" id="full_name_edit_button">
<signal name="toggled" handler="full_name_edit_button_toggled" object="CcUserPanel" swapped="yes"/>
<property name="icon-name">document-edit-symbolic</property>
<property name="valign">GTK_ALIGN_CENTER</property>
<accessibility>
<property name="label" translatable="yes">Edit</property>
</accessibility>
<style>
<class name="flat"/>
</style>
</object>
</child>
</object>
</child>
<child>
<object class="AdwActionRow" id="password_row">
<property name="title" translatable="yes">_Password</property>
<property name="use_underline">True</property>
<property name="activatable">True</property>
<signal name="activated" handler="change_password" object="CcUserPanel" swapped="yes"/>
<child>
<object class="GtkLabel" id="password_button_label"/>
</child>
<child>
<object class="GtkImage">
<property name="icon-name">go-next-symbolic</property>
<style>
<class name="dim-label"/>
</style>
</object>
</child>
</object>
</child>
<child>
<object class="AdwActionRow" id="fingerprint_row">
<property name="visible">True</property> <!-- FIXME -->
<property name="title" translatable="yes">_Fingerprint Login</property>
<property name="use_underline">True</property>
<property name="activatable">True</property>
<signal name="activated" handler="change_fingerprint" object="CcUserPanel" swapped="yes"/>
<child>
<object class="GtkLabel" id="fingerprint_state_label">
<style>
<class name="dim-label"/>
</style>
</object>
</child>
<child>
<object class="GtkImage">
<property name="icon-name">go-next-symbolic</property>
<style>
<class name="dim-label"/>
</style>
</object>
</child>
</object>
</child>
<child>
<object class="AdwActionRow" id="autologin_row">
<property name="title" translatable="yes">A_utomatic Login</property>
<property name="use_underline">True</property>
<property name="activatable_widget">autologin_switch</property>
<child>
<object class="GtkSwitch" id="autologin_switch">
<property name="valign">center</property>
<signal name="notify::active" handler="autologin_changed" object="CcUserPanel" swapped="yes"/>
</object>
</child>
</object>
</child>
<child>
<object class="AdwActionRow" id="last_login_row">
<property name="title" translatable="yes">Account Activity</property>
<property name="activatable">True</property>
<property name="use_underline">True</property>
<signal name="activated" handler="show_history" object="CcUserPanel" swapped="yes"/>
<child>
<object class="GtkLabel" id="last_login_button_label">
<style>
<class name="dim-label"/>
</style>
</object>
</child>
<child>
<object class="GtkImage">
<property name="icon-name">go-next-symbolic</property>
<style>
<class name="dim-label"/>
</style>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="AdwPreferencesGroup" id="account_settings_box">
<child>
<object class="AdwActionRow" id="account_type_row">
<property name="title" translatable="yes">_Administrator</property>
<property name="subtitle" translatable="yes">Administrators can add and remove other users, and can change settings for all users.</property>
<property name="subtitle-lines">0</property>
<property name="use_underline">True</property>
<property name="activatable-widget">account_type_switch</property>
<child>
<object class="GtkSwitch" id="account_type_switch">
<property name="valign">center</property>
<signal name="notify::active" handler="account_type_changed" object="CcUserPanel" swapped="yes"/>
</object>
</child>
</object>
</child>
<child>
<object class="AdwActionRow" id="parental_controls_row">
<property name="visible">False</property>
<property name="title" translatable="yes">_Parental Controls</property>
<property name="subtitle" translatable="yes">Open the Parental Controls application.</property>
<property name="subtitle-lines">0</property>
<property name="use_underline">True</property>
<property name="activatable">True</property>
<child>
<object class="GtkLabel" id="parental_controls_button_label">
<property name="valign">0.5</property>
</object>
</child>
<child>
<object class="GtkImage" id="parental_control_go_next">
<property name="icon-name">go-next-symbolic</property>
<style>
<class name="dim-label"/>
</style>
</object>
</child>
</object>
</child>
<child>
<object class="AdwActionRow" id="language_row">
<property name="title" translatable="yes">_Language</property>
<property name="use_underline">True</property>
<property name="activatable">True</property>
<signal name="activated" handler="change_language" object="CcUserPanel" swapped="yes"/>
<child>
<object class="GtkLabel" id="language_button_label">
<style>
<class name="dim-label"/>
</style>
</object>
</child>
<child>
<object class="GtkImage">
<property name="icon-name">go-next-symbolic</property>
<style>
<class name="dim-label"/>
</style>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="AdwPreferencesGroup">
<child>
<object class="GtkButton" id="remove_user_button">
<property name="visible">False</property>
<property name="label" translatable="yes">Remove User…</property>
<signal name="clicked" handler="delete_user" object="CcUserPanel" swapped="yes"/>
<style>
<class name="destructive-action"/>
</style>
</object>
</child>
</object>
</child>
<child>
<object class="AdwPreferencesGroup" id="other_users">
<property name="visible">False</property>
<property name="title" translatable="yes">Other Users</property>
<child>
<object class="AdwPreferencesRow" id="other_users_row">
<child>
<object class="GtkListBox" id="other_users_listbox">
<property name="selection-mode">none</property>
<signal name="row-activated" handler="set_selected_user" object="CcUserPanel" swapped="yes"/>
</object>
</child>
</object>
</child>
<child>
<object class="AdwActionRow" id="add_user_button">
<property name="title" translatable="yes">Add User…</property>
<property name="icon-name">list-add-symbolic</property>
<property name="activatable">True</property>
<signal name="activated" handler="add_user" object="CcUserPanel" swapped="yes"/>
</object>
</child>
</object>
</child>
</object>
</child>
</object>
</child>
<child>
<object class="GtkBox" id="no_users_box">
<property name="orientation">GTK_ORIENTATION_VERTICAL</property>
<property name="valign">GTK_ALIGN_CENTER</property>
<property name="spacing">12</property>
<style>
<class name="dim-label"/>
</style>
<child>
<object class="GtkImage">
<property name="icon_name">avatar-default-symbolic</property>
<property name="pixel_size">192</property>
</object>
</child>
<child>
<object class="GtkLabel">
<property name="label" translatable="yes" comments="Translators: This is the empty state page label which states that there are no users to show in the panel.">No Users Found</property>
<attributes>
<attribute name="weight" value="bold"/>
<attribute name="scale" value="1.6"/>
</attributes>
</object>
</child>
<child>
<object class="GtkLabel">
<property name="label" translatable="yes">Unlock to add a user account.</property>
</object>
</child>
</object>
</child>
</object>
</child>
</object>
</child>
</template>
</interface>