on xenial help sign in
Accept power events regardless of power state, don't trigger screenshots if screen off
4abadeaMichał Sawicz
qml/Components/PhysicalKeysMapper.qml+3−4
@@ -68,11 +68,10 @@ Item {
68 // the shutdown dialog to appear on resume. So to avoid that
68 // the shutdown dialog to appear on resume. So to avoid that
69 // symptom while we investigate the root cause, we simply won't
69 // symptom while we investigate the root cause, we simply won't
70 // initiate any dialogs when the screen is off.
70 // initiate any dialogs when the screen is off.
71− // This also prevents taking screenshots when the screen is off.
72 if (Powerd.status === Powerd.On) {
71 if (Powerd.status === Powerd.On) {
73 powerKeyLongPressTimer.restart();
72 powerKeyLongPressTimer.restart();
74− event.accepted = true;
75 }
73 }
74+ event.accepted = true;
76 } else if ((event.key == Qt.Key_MediaTogglePlayPause || event.key == Qt.Key_MediaPlay)
75 } else if ((event.key == Qt.Key_MediaTogglePlayPause || event.key == Qt.Key_MediaPlay)
77 && !event.isAutoRepeat) {
76 && !event.isAutoRepeat) {
78 event.accepted = callManager.handleMediaKey(false);
77 event.accepted = callManager.handleMediaKey(false);
@@ -80,7 +79,7 @@ Item {
80 if (event.isAutoRepeat && !d.ignoreVolumeEvents) root.volumeDownTrigger();
79 if (event.isAutoRepeat && !d.ignoreVolumeEvents) root.volumeDownTrigger();
81 else if (!event.isAutoRepeat) {
80 else if (!event.isAutoRepeat) {
82 if (d.volumeUpKeyPressed) {
81 if (d.volumeUpKeyPressed) {
83− root.screenshotTrigger();
82+ if (Powerd.status === Powerd.On) root.screenshotTrigger();
84 d.ignoreVolumeEvents = true;
83 d.ignoreVolumeEvents = true;
85 }
84 }
86 d.volumeDownKeyPressed = true;
85 d.volumeDownKeyPressed = true;
@@ -89,7 +88,7 @@ Item {
89 if (event.isAutoRepeat && !d.ignoreVolumeEvents) root.volumeUpTrigger();
88 if (event.isAutoRepeat && !d.ignoreVolumeEvents) root.volumeUpTrigger();
90 else if (!event.isAutoRepeat) {
89 else if (!event.isAutoRepeat) {
91 if (d.volumeDownKeyPressed) {
90 if (d.volumeDownKeyPressed) {
92− root.screenshotTrigger();
91+ if (Powerd.status === Powerd.On) root.screenshotTrigger();
93 d.ignoreVolumeEvents = true;
92 d.ignoreVolumeEvents = true;
94 }
93 }
95 d.volumeUpKeyPressed = true;
94 d.volumeUpKeyPressed = true;