Skip to content

Commit ddbc0ea

Browse files
committed
Merge #346: Standardize post-onboarding settings window titles to navbar
8f81f0d qml: standardize settings page titles to the navbar (jarolrod) 530714f qml: allow to configure when to show the header text in header control (jarolrod) df44897 qml: add page title to peers page & update description (jarolrod) 716027c qml: make entire peers page scrollable (jarolrod) Pull request description: This moves all settings pages titles post-onboarding into the navbar, standardizing where the title is for all pages. Whereas, currently, we have some within the page content and some in the page navbar. See this issue: BitcoinDesign/Bitcoin-Core-App#55 [![Windows](https://img.shields.io/badge/OS-Windows-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/win64/unsecure_win_gui.zip?branch=pull/346) [![Intel macOS](https://img.shields.io/badge/OS-Intel%20macOS-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/macos/unsecure_mac_gui.zip?branch=pull/346) [![Apple Silicon macOS](https://img.shields.io/badge/OS-Apple%20Silicon%20macOS-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/macos_arm64/unsecure_mac_arm64_gui.zip?branch=pull/346) [![ARM64 Android](https://img.shields.io/badge/OS-Android-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/android/unsecure_android_apk.zip?branch=pull/346) [![ARM32 Android](https://img.shields.io/badge/OS-Android%2032bit-green)](https://api.cirrus-ci.com/v1/artifact/github/bitcoin-core/gui-qml/android32/unsecure_android_32bit_apk.zip?branch=pull/346) ACKs for top commit: GBKS: ACK 8f81f0d Tree-SHA512: c1ebce0735edaec73c8d5b7d511db8423f1bfa89d8772e51a6ef938cdf6272baaa2079411daf53a255a298b793c23dd609f4f12ae2a3f1f4dcb1a4ea504e59aa
2 parents 26801a3 + 8f81f0d commit ddbc0ea

File tree

5 files changed

+62
-13
lines changed

5 files changed

+62
-13
lines changed

src/qml/controls/Header.qml

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ ColumnLayout {
1010
id: root
1111
property bool center: true
1212
required property string header
13+
property bool showHeader: true
1314
property int headerMargin
1415
property int headerSize: 28
1516
property bool headerBold: false
@@ -26,27 +27,32 @@ ColumnLayout {
2627
property bool wrap: true
2728

2829
spacing: 0
29-
Label {
30+
Loader {
3031
Layout.fillWidth: true
31-
topPadding: root.headerMargin
32-
font.family: "Inter"
33-
font.styleName: root.headerBold ? "Semi Bold" : "Regular"
34-
font.pixelSize: root.headerSize
35-
color: root.headerColor
36-
text: root.header
37-
horizontalAlignment: center ? Text.AlignHCenter : Text.AlignLeft
38-
wrapMode: wrap ? Text.WordWrap : Text.NoWrap
32+
active: root.showHeader && root.header.length > 0
33+
visible: active
34+
sourceComponent: Label {
35+
Layout.fillWidth: true
36+
topPadding: root.headerMargin
37+
font.family: "Inter"
38+
font.styleName: root.headerBold ? "Semi Bold" : "Regular"
39+
font.pixelSize: root.headerSize
40+
color: root.headerColor
41+
text: root.header
42+
horizontalAlignment: center ? Text.AlignHCenter : Text.AlignLeft
43+
wrapMode: wrap ? Text.WordWrap : Text.NoWrap
3944

40-
Behavior on color {
41-
ColorAnimation { duration: 150 }
45+
Behavior on color {
46+
ColorAnimation { duration: 150 }
47+
}
4248
}
4349
}
4450
Loader {
4551
Layout.fillWidth: true
4652
active: root.description.length > 0
4753
visible: active
4854
sourceComponent: Label {
49-
topPadding: root.descriptionMargin
55+
topPadding: showHeader ? root.descriptionMargin : root.headerMargin
5056
font.family: "Inter"
5157
font.styleName: root.descriptionBold ? "Semi Bold" : "Regular"
5258
font.pixelSize: root.descriptionSize

src/qml/controls/InformationPage.qml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ Page {
2626
property bool center: true
2727
property int bannerMargin: 20
2828
required property string headerText
29+
property bool showHeader: true
2930
property int headerMargin: 30
3031
property int headerSize: 28
3132
property string description: ""
@@ -71,6 +72,7 @@ Page {
7172
headerBold: root.bold
7273
center: root.center
7374
header: root.headerText
75+
showHeader: root.showHeader
7476
headerMargin: root.headerMargin
7577
headerSize: root.headerSize
7678
description: root.description

src/qml/pages/node/NodeSettings.qml

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,13 +121,24 @@ Item {
121121
Component {
122122
id: about_page
123123
SettingsAbout {
124+
showHeader: false
124125
navLeftDetail: NavButton {
125126
iconSource: "image://images/caret-left"
126127
text: qsTr("Back")
127128
onClicked: {
128129
nodeSettingsView.pop()
129130
}
130131
}
132+
navMiddleDetail: Header {
133+
headerBold: true
134+
headerSize: 18
135+
header: qsTr("About")
136+
}
137+
devMiddleDetail: Header {
138+
headerBold: true
139+
headerSize: 18
140+
header: qsTr("Developer settings")
141+
}
131142
}
132143
}
133144
Component {
@@ -143,32 +154,44 @@ Item {
143154
navMiddleDetail: Header {
144155
headerBold: true
145156
headerSize: 18
146-
header: qsTr("Settings")
157+
header: qsTr("Display settings")
147158
}
148159
}
149160
}
150161
Component {
151162
id: storage_page
152163
SettingsStorage {
164+
showHeader: false
153165
navLeftDetail: NavButton {
154166
iconSource: "image://images/caret-left"
155167
text: qsTr("Back")
156168
onClicked: {
157169
nodeSettingsView.pop()
158170
}
159171
}
172+
navMiddleDetail: Header {
173+
headerBold: true
174+
headerSize: 18
175+
header: qsTr("Storage settings")
176+
}
160177
}
161178
}
162179
Component {
163180
id: connection_page
164181
SettingsConnection {
182+
showHeader: false
165183
navLeftDetail: NavButton {
166184
iconSource: "image://images/caret-left"
167185
text: qsTr("Back")
168186
onClicked: {
169187
nodeSettingsView.pop()
170188
}
171189
}
190+
navMiddleDetail: Header {
191+
headerBold: true
192+
headerSize: 18
193+
header: qsTr("Connection settings")
194+
}
172195
}
173196
}
174197
Component {
@@ -192,13 +215,19 @@ Item {
192215
Component {
193216
id: networktraffic_page
194217
NetworkTraffic {
218+
showHeader: false
195219
navLeftDetail: NavButton {
196220
iconSource: "image://images/caret-left"
197221
text: qsTr("Back")
198222
onClicked: {
199223
nodeSettingsView.pop()
200224
}
201225
}
226+
navMiddleDetail: Header {
227+
headerBold: true
228+
headerSize: 18
229+
header: qsTr("Network traffic")
230+
}
202231
}
203232
}
204233
}

src/qml/pages/settings/SettingsAbout.qml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,15 @@ import "../../components"
1010

1111
Item {
1212
property alias navLeftDetail: aboutSwipe.navLeftDetail
13+
property alias navMiddleDetail: aboutSwipe.navMiddleDetail
14+
property alias devMiddleDetail: aboutSwipe.devMiddleDetail
15+
property alias showHeader: aboutSwipe.showHeader
1316
SwipeView {
1417
id: aboutSwipe
1518
property alias navLeftDetail: about_settings.navLeftDetail
19+
property alias navMiddleDetail: about_settings.navMiddleDetail
20+
property alias devMiddleDetail: about_developer.navMiddleDetail
21+
property alias showHeader: about_settings.showHeader
1622
anchors.fill: parent
1723
interactive: false
1824
orientation: Qt.Horizontal
@@ -29,6 +35,8 @@ Item {
2935
detailItem: AboutOptions {}
3036
}
3137
SettingsDeveloper {
38+
id: about_developer
39+
showHeader: about_settings.showHeader
3240
navLeftDetail: NavButton {
3341
iconSource: "image://images/caret-left"
3442
text: qsTr("Back")

src/qml/pages/settings/SettingsConnection.qml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,15 @@ import "../../components"
1010

1111
Item {
1212
property alias navRightDetail: connectionSwipe.navRightDetail
13+
property alias navMiddleDetail: connectionSwipe.navMiddleDetail
1314
property alias navLeftDetail: connectionSwipe.navLeftDetail
15+
property alias showHeader: connectionSwipe.showHeader
1416
SwipeView {
1517
id: connectionSwipe
1618
property alias navRightDetail: connection_settings.navRightDetail
19+
property alias navMiddleDetail: connection_settings.navMiddleDetail
1720
property alias navLeftDetail: connection_settings.navLeftDetail
21+
property alias showHeader: connection_settings.showHeader
1822
anchors.fill: parent
1923
interactive: false
2024
orientation: Qt.Horizontal

0 commit comments

Comments
 (0)