aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/modules/user/UserModule.qml
blob: 31ef0d87a473cc49677af4ee1fa72f0c5a7d86c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
// Copyright (C) 2026 Danilo M. <danix@danix.xyz>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License version 2 as
// published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.

import QtQuick
import "../.."

// The user's details, in the settings window. No tile: the drawer's greeting
// row opens the page there, and "More git settings" moves to the git page.
Module {
    id: um
    name: "user"
    label: "User"
    // nf-fa-user, present in Inconsolata Nerd Font.
    icon: "\uf007"
    settings: true
    group: "Account"
    keywords: ["name", "email", "avatar", "picture", "photo", "language", "location",
               "signing", "key", "gpg", "accountsservice"]

    page: Component {
        Page {
            id: pg
            title: "User"
            // The draft lives in the page, so it is not marked in the
            // sidebar: leaving the page drops it, as it always has.
            actions: Component {
                SaveBar { dirty: up.changed.length > 0; valid: up.loadError === ""; busy: up.busy
                          onSave: up.save(); onDiscard: up.discard() }
            }
            UserPage { id: up; width: parent.width; owner: um; onMoreGit: pg.go("git") }
        }
    }
}