@@ -66,6 +66,12 @@ FocusScope {
66 visible: !root.isPrompt
66 visible: !root.isPrompt
67 focus: visible
67 focus: visible
70+ // Qt owns focus, we can't keep our binding active. So make sure
71+ // focus stays in sync manually.
69 onClicked: {
75 onClicked: {
70 if (d.enabled) {
76 if (d.enabled) {
71 d.enabled = false;
77 d.enabled = false;
@@ -86,12 +92,12 @@ FocusScope {
86 anchors.fill: parent
92 anchors.fill: parent
87 visible: root.isPrompt
93 visible: root.isPrompt
88 opacity: fakeLabel.visible ? 0 : 1
94 opacity: fakeLabel.visible ? 0 : 1
90− // Oddly, a simple "focus: visible" does not stick -- the binding
97+ onVisibleChanged: {
91− // gets lost when switching between buttons and prompts. But this
98+ // Qt owns focus, we can't keep our binding active. So make sure
92− // explicit binding does work.
99+ // focus stays in sync manually.
93− Binding on focus {
100+ focus = visible;
94− value: passwordInput.visible
97 validator: RegExpValidator {
103 validator: RegExpValidator {