2021-02-14 19:35:28 +00:00
|
|
|
From 17f73b8f70e5b5ea5b4eca5bebe4c533cba426ee Mon Sep 17 00:00:00 2001
|
2021-02-12 22:05:24 +00:00
|
|
|
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
|
|
|
|
Date: Thu, 11 Feb 2021 18:10:56 +0100
|
2021-02-14 19:35:28 +00:00
|
|
|
Subject: [PATCH 1/2] overviewControls: Everything is lava!
|
2021-02-12 22:05:24 +00:00
|
|
|
|
|
|
|
Account for the increased distance from Activities button to the
|
|
|
|
show-apps button by allowing clicks on the background to bring up
|
|
|
|
the app grid.
|
|
|
|
---
|
|
|
|
js/ui/overviewControls.js | 6 ++++++
|
|
|
|
1 file changed, 6 insertions(+)
|
|
|
|
|
|
|
|
diff --git a/js/ui/overviewControls.js b/js/ui/overviewControls.js
|
|
|
|
index 32388621e..06c875332 100644
|
|
|
|
--- a/js/ui/overviewControls.js
|
|
|
|
+++ b/js/ui/overviewControls.js
|
|
|
|
@@ -247,6 +247,7 @@ class ControlsManager extends St.Widget {
|
|
|
|
style_class: 'controls-manager',
|
|
|
|
x_expand: true,
|
|
|
|
y_expand: true,
|
|
|
|
+ reactive: true,
|
|
|
|
clip_to_allocation: true,
|
|
|
|
});
|
|
|
|
|
|
|
|
@@ -321,6 +322,11 @@ class ControlsManager extends St.Widget {
|
|
|
|
this.dash.showAppsButton.connect('notify::checked',
|
|
|
|
this._onShowAppsButtonToggled.bind(this));
|
|
|
|
|
|
|
|
+ const clickAction = new Clutter.ClickAction();
|
|
|
|
+ clickAction.connect('clicked',
|
|
|
|
+ () => (this.dash.showAppsButton.checked = true));
|
|
|
|
+ this.add_action(clickAction);
|
|
|
|
+
|
|
|
|
Main.ctrlAltTabManager.addGroup(
|
|
|
|
this.appDisplay,
|
|
|
|
_('Applications'),
|
|
|
|
--
|
|
|
|
2.29.2
|
|
|
|
|
2021-02-14 19:35:28 +00:00
|
|
|
|
|
|
|
From 9bd1649e37fbc2529e3bd243fae3c3a515eeb9d0 Mon Sep 17 00:00:00 2001
|
|
|
|
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
|
|
|
|
Date: Sun, 14 Feb 2021 19:24:52 +0100
|
|
|
|
Subject: [PATCH 2/2] workspaceThumbnail: Always consume button/touch events on
|
|
|
|
thumbnails
|
|
|
|
|
|
|
|
Now that the background is reactive and opens the app grid, we have to
|
|
|
|
be more careful when consuming or propagating events: Thumbnails must
|
|
|
|
consume events, non-thumbnail parts should let them through.
|
|
|
|
---
|
|
|
|
js/ui/workspaceThumbnail.js | 25 +++++++++++++++++--------
|
|
|
|
1 file changed, 17 insertions(+), 8 deletions(-)
|
|
|
|
|
|
|
|
diff --git a/js/ui/workspaceThumbnail.js b/js/ui/workspaceThumbnail.js
|
|
|
|
index 40a33fe3a..0ec04c5b0 100644
|
|
|
|
--- a/js/ui/workspaceThumbnail.js
|
|
|
|
+++ b/js/ui/workspaceThumbnail.js
|
|
|
|
@@ -708,25 +708,34 @@ var ThumbnailsBox = GObject.registerClass({
|
|
|
|
workspaceManager.n_workspaces > 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
- _activateThumbnailAtPoint(stageX, stageY, time) {
|
|
|
|
+ _findThumbnailAtPoint(stageX, stageY) {
|
|
|
|
const [r_, x] = this.transform_stage_point(stageX, stageY);
|
|
|
|
+ return this._thumbnails.find(t => x >= t.x && x <= t.x + t.width);
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- const thumbnail = this._thumbnails.find(t => x >= t.x && x <= t.x + t.width);
|
|
|
|
- if (thumbnail)
|
|
|
|
- thumbnail.activate(time);
|
|
|
|
+ vfunc_button_press_event(buttonEvent) {
|
|
|
|
+ const { x, y } = buttonEvent;
|
|
|
|
+ return this._findThumbnailAtPoint(x, y)
|
|
|
|
+ ? Clutter.EVENT_STOP: Clutter.EVENT_PROPAGATE;
|
|
|
|
}
|
|
|
|
|
|
|
|
vfunc_button_release_event(buttonEvent) {
|
|
|
|
- let { x, y } = buttonEvent;
|
|
|
|
- this._activateThumbnailAtPoint(x, y, buttonEvent.time);
|
|
|
|
+ const { x, y } = buttonEvent;
|
|
|
|
+ const thumbnail = this._findThumbnailAtPoint(x, y);
|
|
|
|
+ if (!thumbnail)
|
|
|
|
+ return Clutter.EVENT_PROPAGATE;
|
|
|
|
+ thumbnail.activate(buttonEvent.time);
|
|
|
|
return Clutter.EVENT_STOP;
|
|
|
|
}
|
|
|
|
|
|
|
|
vfunc_touch_event(touchEvent) {
|
|
|
|
+ const { x, y } = touchEvent;
|
|
|
|
+ const thumbnail = this._findThumbnailAtPoint(x, y);
|
|
|
|
+ if (!thumbnail)
|
|
|
|
+ return Clutter.EVENT_PROPAGATE;
|
|
|
|
if (touchEvent.type == Clutter.EventType.TOUCH_END &&
|
|
|
|
global.display.is_pointer_emulating_sequence(touchEvent.sequence)) {
|
|
|
|
- let { x, y } = touchEvent;
|
|
|
|
- this._activateThumbnailAtPoint(x, y, touchEvent.time);
|
|
|
|
+ thumbnail.activate(touchEvent.time);
|
|
|
|
}
|
|
|
|
|
|
|
|
return Clutter.EVENT_STOP;
|
|
|
|
--
|
|
|
|
2.29.2
|
|
|
|
|