keyboard: Keep tray after clicking summary item
Currently if a summary item signals that it has handled a click itself, the tray hides itself. This behavior is wrong for the On-Screen-Keyboard, which appears as a unit with the tray, so add a property to opt-out of the default behavior. https://bugzilla.gnome.org/show_bug.cgi?id=683546
This commit is contained in:
parent
2e63709450
commit
2ed7ee8f71
@ -565,6 +565,7 @@ const KeyboardSource = new Lang.Class({
|
||||
_init: function(keyboard) {
|
||||
this._keyboard = keyboard;
|
||||
this.parent(_("Keyboard"), 'input-keyboard-symbolic');
|
||||
this.keepTrayOnSummaryClick = true;
|
||||
},
|
||||
|
||||
handleSummaryClick: function() {
|
||||
|
@ -1052,6 +1052,7 @@ const Source = new Lang.Class({
|
||||
this.isChat = false;
|
||||
this.isMuted = false;
|
||||
this.showInLockScreen = true;
|
||||
this.keepTrayOnSummaryClick = false;
|
||||
|
||||
this.notifications = [];
|
||||
},
|
||||
@ -1776,7 +1777,10 @@ const MessageTray = new Lang.Class({
|
||||
|
||||
_onSummaryItemClicked: function(summaryItem, button) {
|
||||
if (summaryItem.source.handleSummaryClick()) {
|
||||
this._escapeTray();
|
||||
if (summaryItem.source.keepTrayOnSummaryClick)
|
||||
this._setClickedSummaryItem(null);
|
||||
else
|
||||
this._escapeTray();
|
||||
} else {
|
||||
if (!this._setClickedSummaryItem(summaryItem, button))
|
||||
this._setClickedSummaryItem(null);
|
||||
|
Loading…
Reference in New Issue
Block a user