The safety layer: two presses for anything you cannot take back
Claude-Session: https://claude.ai/code/session_01Ms2FbjQy31TVf3CEvQhGM8
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
// A failure, reported where it happened. Before this component every page
|
||||
// hand-rolled the same stanza with a different headline -- "Problem",
|
||||
// "Updates need attention", "The network needs attention" -- and no visual
|
||||
// mark distinguishing a failure from any other read-only fact. One shape now:
|
||||
//
|
||||
// ErrorRow { message: Updates.lastError }
|
||||
// ErrorRow { message: Vpn.lastError; label: "The VPN needs attention" }
|
||||
//
|
||||
// The row hides itself while the message is empty, so consumers bind the
|
||||
// service's lastError directly and write no visible: line. The message is the
|
||||
// service's own sentence -- this component never rewords a failure, only
|
||||
// frames it.
|
||||
|
||||
import QtQuick
|
||||
import qs.config
|
||||
|
||||
SettingRow {
|
||||
id: root
|
||||
|
||||
property string message: ""
|
||||
label: "Needs attention"
|
||||
|
||||
visible: root.message !== ""
|
||||
detail: root.message
|
||||
labelColor: Theme.danger
|
||||
controlWidth: 210
|
||||
divider: false
|
||||
}
|
||||
Reference in New Issue
Block a user