on xenial help sign in
Don't show any power dialogs while the screen is off. This is a band-aid to avoid the symptom, while we still investigate the source of why the screen doesn't turn on (and why we seem to not handle the power-button-release event). Fixes: #1409003, #1410830
47c036eMichael Terry
qml/Shell.qml+10−1
@@ -181,7 +181,16 @@ Item {
181 WindowKeysFilter {
181 WindowKeysFilter {
182 Keys.onPressed: {
182 Keys.onPressed: {
183 if (event.key == Qt.Key_PowerOff || event.key == Qt.Key_PowerDown) {
183 if (event.key == Qt.Key_PowerOff || event.key == Qt.Key_PowerDown) {
184+ // FIXME: We only consider power key presses if the screen is
185+ // on because of bugs 1410830/1409003. The theory is that when
186+ // those bugs are encountered, there is a >2s delay between the
187+ // power press event and the power release event, which causes
188+ // the shutdown dialog to appear on resume. So to avoid that
189+ // symptom while we investigate the root cause, we simply won't
190+ // initiate any dialogs when the screen is off.
191+ if (Powerd.status === Powerd.On) {
184− dialogs.onPowerKeyPressed();
192+ dialogs.onPowerKeyPressed();
193+ }
185 event.accepted = true;
194 event.accepted = true;
186 } else {
195 } else {
187 volumeKeyFilter.onKeyPressed(event.key);
196 volumeKeyFilter.onKeyPressed(event.key);