@@ -24,6 +24,12 @@ Showable {
2424 // Determine if a numeric or alphanumeric pad is used.
2525 property bool alphaNumeric: false
2626
27+ // Whether to show an emergency call button
28+ property bool showEmergencyCallButton: true
29+
30+ // Whether to show a cancel button (not all lockscreen types normally do anyway)
31+ property bool showCancelButton: true
32+
2733 // Informational text. (e.g. some text to tell which domain this is pin is entered for)
2834 property string infoText: ""
2935
@@ -76,10 +82,11 @@ Showable {
7682 }
7783
7884 Rectangle {
79− // In case background fails to load or is undefined
85+ // In case background fails to load
8086 id: backgroundBackup
8187 anchors.fill: parent
8288 color: "black"
89+ visible: root.background.toString() !== ""
8390 }
8491
8592 Image {
@@ -184,19 +191,17 @@ Showable {
184191 value: root.delayMinutes
185192 }
186193 }
194+ Binding {
195+ target: pinPadLoader.item
196+ property: "showCancelButton"
197+ value: root.showCancelButton
198+ }
187199 }
188200
189201 Item {
190202 id: emergencyCallRow
191203
192− // FIXME: We *should* show emergency dialer if there is a SIM present,
193− // regardless of whether the side stage is enabled. But right now,
194− // the assumption is that narrow screens are phones which have SIMs
195− // and wider screens are tablets which don't. When we do allow this
196− // on devices with a side stage and a SIM, work should be done to
197− // ensure that the main stage is disabled while the dialer is present
198− // in the side stage.
199− visible: !shell.sideStageEnabled
204+ visible: showEmergencyCallButton
200205
201206 anchors {
202207 bottom: parent.bottom