appDisplay: Make middle-click like Ctrl+click
When middle-clicking an app icon on the Dash, it will always try to open a new window of that app, even if the app doesn't support multiple windows. Meanwhile, Ctrl+click on an app will only open a new window if the app allows it. This change prevents middle-clicks on app icons from opening new windows for apps without multi-window support. Closes: https://gitlab.gnome.org/GNOME/gnome-shell/issues/316
This commit is contained in:
parent
a0fa50ac31
commit
a21a22fdb5
@ -1778,10 +1778,11 @@ var AppIcon = new Lang.Class({
|
||||
activate(button) {
|
||||
let event = Clutter.get_current_event();
|
||||
let modifiers = event ? event.get_state() : 0;
|
||||
let openNewWindow = this.app.can_open_new_window () &&
|
||||
modifiers & Clutter.ModifierType.CONTROL_MASK &&
|
||||
this.app.state == Shell.AppState.RUNNING ||
|
||||
button && button == 2;
|
||||
let isMiddleButton = button && button == Clutter.BUTTON_MIDDLE;
|
||||
let isCtrlPressed = (modifiers & Clutter.ModifierType.CONTROL_MASK) != 0;
|
||||
let openNewWindow = this.app.can_open_new_window() &&
|
||||
this.app.state == Shell.AppState.RUNNING &&
|
||||
(isCtrlPressed || isMiddleButton);
|
||||
|
||||
if (this.app.state == Shell.AppState.STOPPED || openNewWindow)
|
||||
this.animateLaunch();
|
||||
|
Loading…
Reference in New Issue
Block a user