1.1 --- a/DisplayTab.qml Wed May 28 19:31:55 2014 +0200
1.2 +++ b/DisplayTab.qml Wed May 28 20:14:23 2014 +0200
1.3 @@ -15,14 +15,13 @@
1.4 Component.onCompleted: {
1.5 display.closing.connect(onDisplayClosing);
1.6 display.opened.connect(onDisplayOpened);
1.7 + appWindow.closing.connect(onWindowClosing);
1.8 if(checkBoxConnectOnStartUp.checked) display.open()
1.9 }
1.10
1.11 //We need to disconnect our signals to avoid receiving stray events
1.12 Component.onDestruction: {
1.13 - display.closed.disconnect(onDisplayClosing);
1.14 - display.opened.disconnect(onDisplayOpened);
1.15 - onDisplayClosing();
1.16 + disconnectDisplaySignals()
1.17 }
1.18 //
1.19 Settings {
1.20 @@ -32,31 +31,44 @@
1.21 property alias brightness: sliderBrightness.value;
1.22 }
1.23
1.24 + function disconnectDisplaySignals()
1.25 + {
1.26 + display.closed.disconnect(onDisplayClosing);
1.27 + display.opened.disconnect(onDisplayOpened);
1.28 + }
1.29 +
1.30 + //Clear both front and back buffers
1.31 + function clearBuffers()
1.32 + {
1.33 + display.clear();
1.34 + display.swapBuffers();
1.35 + display.clear();
1.36 + display.swapBuffers();
1.37 + }
1.38 +
1.39 + function onWindowClosing()
1.40 + {
1.41 + //Clear both our frames
1.42 + onDisplayClosing();
1.43 + disconnectDisplaySignals();
1.44 + }
1.45 +
1.46 function onDisplayClosing()
1.47 {
1.48 - //Clear both our frames
1.49 - if (checkBoxClearWhenDisconnecting.checked)
1.50 + if (checkBoxClearWhenDisconnecting != null && checkBoxClearWhenDisconnecting.checked)
1.51 {
1.52 - display.clear();
1.53 - display.swapBuffers();
1.54 - display.clear();
1.55 - display.swapBuffers();
1.56 + clearBuffers();
1.57 }
1.58 }
1.59
1.60 function onDisplayOpened()
1.61 {
1.62 - //Clear both our frames
1.63 if (checkBoxClearWhenConnecting.checked)
1.64 {
1.65 - display.clear();
1.66 - display.swapBuffers();
1.67 - display.clear();
1.68 - display.swapBuffers();
1.69 + clearBuffers();
1.70 }
1.71 }
1.72
1.73 -
1.74 //
1.75
1.76 Column {