Skip to content

Commit aec1f1b

Browse files
authored
Merge branch 'main' into lenemter/fix-scale-factor
2 parents 65a63fd + 89ef729 commit aec1f1b

File tree

80 files changed

+212
-3682
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+212
-3682
lines changed

lib/CloseButton.vala

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -79,11 +79,7 @@ public class Gala.CloseButton : Clutter.Actor {
7979
pixbuf_actor.background_color = { 255, 0, 0, 255 };
8080
}
8181

82-
#if HAS_MUTTER45
8382
public override bool button_press_event (Clutter.Event e) {
84-
#else
85-
public override bool button_press_event (Clutter.ButtonEvent e) {
86-
#endif
8783
var estimated_duration = (uint) (ANIMATION_DURATION * (scale_x - 0.8) / 0.2);
8884

8985
pixbuf_actor.save_easing_state ();
@@ -97,11 +93,7 @@ public class Gala.CloseButton : Clutter.Actor {
9793
return Clutter.EVENT_STOP;
9894
}
9995

100-
#if HAS_MUTTER45
10196
public override bool button_release_event (Clutter.Event e) {
102-
#else
103-
public override bool button_release_event (Clutter.ButtonEvent e) {
104-
#endif
10597
reset_scale ();
10698

10799
if (is_pressed) {
@@ -112,11 +104,7 @@ public class Gala.CloseButton : Clutter.Actor {
112104
return Clutter.EVENT_STOP;
113105
}
114106

115-
#if HAS_MUTTER45
116107
public override bool leave_event (Clutter.Event event) {
117-
#else
118-
public override bool leave_event (Clutter.CrossingEvent event) {
119-
#endif
120108
reset_scale ();
121109
is_pressed = false;
122110

lib/Constants.vala

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,16 @@ namespace Gala {
3535
NUDGE = 360,
3636
}
3737

38+
public enum GestureAction {
39+
NONE,
40+
SWITCH_WORKSPACE,
41+
SWITCH_WINDOWS,
42+
MULTITASKING_VIEW,
43+
DOCK,
44+
ZOOM,
45+
N_ACTIONS
46+
}
47+
3848
/**
3949
* Used as a key for Object.set_data<bool> on Meta.Windows that should be
4050
* treated as notifications. Has to be set before the window is mapped.

lib/Plugin.vala

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -84,34 +84,20 @@ namespace Gala {
8484
* It is calculated by the system whenever update_region is called.
8585
* You can influce it with the custom_region and the track_actor function.
8686
*/
87-
#if HAS_MUTTER45
8887
private Mtk.Rectangle[] region;
8988
public unowned Mtk.Rectangle[] get_region () {
90-
#else
91-
private Meta.Rectangle[] region;
92-
public unowned Meta.Rectangle[] get_region () {
93-
#endif
9489
return region;
9590
}
9691
/**
9792
* This list will be merged with the region property. See region for
9893
* more details. Changing this property will cause update_region to be
9994
* called. Default to null.
10095
*/
101-
#if HAS_MUTTER45
10296
private Mtk.Rectangle[]? _custom_region = null;
10397
protected unowned Mtk.Rectangle[]? get_custom_region () {
104-
#else
105-
private Meta.Rectangle[]? _custom_region = null;
106-
protected unowned Meta.Rectangle[]? get_custom_region () {
107-
#endif
10898
return _custom_region;
10999
}
110-
#if HAS_MUTTER45
111100
protected void set_custom_region (Mtk.Rectangle[]? custom_region) {
112-
#else
113-
protected void set_custom_region (Meta.Rectangle[]? custom_region) {
114-
#endif
115101
_custom_region = custom_region;
116102
update_region ();
117103
}
@@ -189,11 +175,7 @@ namespace Gala {
189175
var has_custom = custom_region != null;
190176
var len = tracked_actors.length () + (has_custom ? custom_region.length : 0);
191177

192-
#if HAS_MUTTER45
193178
var regions = new Mtk.Rectangle[len];
194-
#else
195-
var regions = new Meta.Rectangle[len];
196-
#endif
197179
var i = 0;
198180

199181
if (has_custom) {

lib/Utils.vala

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -305,11 +305,7 @@ namespace Gala {
305305
*/
306306
public static Clutter.Actor? get_window_actor_snapshot (
307307
Meta.WindowActor actor,
308-
#if HAS_MUTTER45
309308
Mtk.Rectangle inner_rect
310-
#else
311-
Meta.Rectangle inner_rect
312-
#endif
313309
) {
314310
Clutter.Content content;
315311

@@ -344,11 +340,7 @@ namespace Gala {
344340
*/
345341
[Version (deprecated = true, deprecated_since = "7.0.3", replacement = "Meta.Display.get_monitor_scale")]
346342
public static int get_ui_scaling_factor () {
347-
#if HAS_MUTTER44
348343
return 1;
349-
#else
350-
return Meta.Backend.get_backend ().get_settings ().get_ui_scaling_factor ();
351-
#endif
352344
}
353345

354346
/**

lib/WindowManager.vala

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,9 @@ namespace Gala {
7070
*/
7171
public class ModalProxy : Object {
7272
public Clutter.Grab? grab { get; set; }
73+
74+
private GestureAction[] allowed_actions;
75+
7376
/**
7477
* A function which is called whenever a keybinding is pressed. If you supply a custom
7578
* one you can filter out those that'd you like to be passed through and block all others.
@@ -94,6 +97,14 @@ namespace Gala {
9497
public void allow_all_keybindings () {
9598
_keybinding_filter = null;
9699
}
100+
101+
public void allow_actions (GestureAction[] actions) {
102+
allowed_actions = actions;
103+
}
104+
105+
public bool filter_action (GestureAction action) {
106+
return !(action in allowed_actions);
107+
}
97108
}
98109

99110
public interface WindowManager : Meta.Plugin {
@@ -185,5 +196,11 @@ namespace Gala {
185196
* @param action_key The gsettings key of action. Available keys are stored in ActionKeys
186197
*/
187198
public abstract void launch_action (string action_key);
199+
200+
/**
201+
* Checks whether the action should currently be prohibited.
202+
* @return true if the action should be prohibited, false otherwise
203+
*/
204+
public abstract bool filter_action (GestureAction action);
188205
}
189206
}

meson.build

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -103,39 +103,6 @@ libmutter_dep = []
103103

104104
vala_flags = []
105105

106-
mutter42_dep = dependency('libmutter-10', version: ['>= 42', '< 43'], required: false)
107-
if mutter42_dep.found()
108-
libmutter_dep = dependency('libmutter-10', version: '>= 42')
109-
mutter_dep = [
110-
libmutter_dep,
111-
dependency('mutter-cogl-10'), dependency('mutter-cogl-pango-10'),
112-
dependency('mutter-clutter-10')
113-
]
114-
vala_flags = []
115-
endif
116-
117-
mutter43_dep = dependency('libmutter-11', version: ['>= 43', '< 44'], required: false)
118-
if mutter43_dep.found()
119-
libmutter_dep = dependency('libmutter-11', version: '>= 43')
120-
mutter_dep = [
121-
libmutter_dep,
122-
dependency('mutter-cogl-11'), dependency('mutter-cogl-pango-11'),
123-
dependency('mutter-clutter-11')
124-
]
125-
vala_flags = ['--define', 'HAS_MUTTER43']
126-
endif
127-
128-
mutter44_dep = dependency('libmutter-12', version: ['>= 44', '< 45'], required: false)
129-
if mutter44_dep.found()
130-
libmutter_dep = dependency('libmutter-12', version: '>= 44')
131-
mutter_dep = [
132-
libmutter_dep,
133-
dependency('mutter-cogl-12'), dependency('mutter-cogl-pango-12'),
134-
dependency('mutter-clutter-12')
135-
]
136-
vala_flags = ['--define', 'HAS_MUTTER43', '--define', 'HAS_MUTTER44']
137-
endif
138-
139106
mutter45_dep = dependency('libmutter-13', version: ['>= 45', '< 46'], required: false)
140107
if mutter45_dep.found()
141108
libmutter_dep = dependency('libmutter-13', version: '>= 45')

plugins/pip/Main.vala

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,7 @@ public class Gala.Plugins.PIP.Plugin : Gala.Plugin {
2222
private Gala.WindowManager? wm = null;
2323
private SelectionArea? selection_area;
2424

25-
#if HAS_MUTTER45
2625
private static inline bool meta_rectangle_contains (Mtk.Rectangle rect, int x, int y) {
27-
#else
28-
private static inline bool meta_rectangle_contains (Meta.Rectangle rect, int x, int y) {
29-
#endif
3026
return x >= rect.x && x < rect.x + rect.width
3127
&& y >= rect.y && y < rect.y + rect.height;
3228
}

plugins/pip/PopupWindow.vala

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -162,11 +162,7 @@ public class Gala.Plugins.PIP.PopupWindow : Clutter.Actor {
162162
}
163163
}
164164

165-
#if HAS_MUTTER45
166165
public override bool enter_event (Clutter.Event event) {
167-
#else
168-
public override bool enter_event (Clutter.CrossingEvent event) {
169-
#endif
170166
var duration = Utils.get_animation_duration (300);
171167

172168
close_button.save_easing_state ();
@@ -182,11 +178,7 @@ public class Gala.Plugins.PIP.PopupWindow : Clutter.Actor {
182178
return Clutter.EVENT_PROPAGATE;
183179
}
184180

185-
#if HAS_MUTTER45
186181
public override bool leave_event (Clutter.Event event) {
187-
#else
188-
public override bool leave_event (Clutter.CrossingEvent event) {
189-
#endif
190182
var duration = Utils.get_animation_duration (300);
191183

192184
close_button.save_easing_state ();
@@ -220,11 +212,7 @@ public class Gala.Plugins.PIP.PopupWindow : Clutter.Actor {
220212
display.set_cursor (Meta.Cursor.DEFAULT);
221213
}
222214

223-
#if HAS_MUTTER45
224215
private bool on_resize_button_press (Clutter.Event event) {
225-
#else
226-
private bool on_resize_button_press (Clutter.ButtonEvent event) {
227-
#endif
228216
if (resizing || event.get_button () != Clutter.Button.PRIMARY) {
229217
return Clutter.EVENT_STOP;
230218
}

plugins/pip/SelectionArea.vala

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,7 @@ public class Gala.Plugins.PIP.SelectionArea : CanvasActor {
4444
height = screen_height;
4545
}
4646

47-
#if HAS_MUTTER45
4847
public override bool key_press_event (Clutter.Event e) {
49-
#else
50-
public override bool key_press_event (Clutter.KeyEvent e) {
51-
#endif
5248
if (e.get_key_symbol () == Clutter.Key.Escape) {
5349
close ();
5450
closed ();
@@ -58,11 +54,7 @@ public class Gala.Plugins.PIP.SelectionArea : CanvasActor {
5854
return false;
5955
}
6056

61-
#if HAS_MUTTER45
6257
public override bool button_press_event (Clutter.Event e) {
63-
#else
64-
public override bool button_press_event (Clutter.ButtonEvent e) {
65-
#endif
6658
if (dragging || e.get_button () != Clutter.Button.PRIMARY) {
6759
return true;
6860
}
@@ -76,11 +68,7 @@ public class Gala.Plugins.PIP.SelectionArea : CanvasActor {
7668
return true;
7769
}
7870

79-
#if HAS_MUTTER45
8071
public override bool button_release_event (Clutter.Event e) {
81-
#else
82-
public override bool button_release_event (Clutter.ButtonEvent e) {
83-
#endif
8472
if (e.get_button () != Clutter.Button.PRIMARY) {
8573
return true;
8674
}
@@ -109,11 +97,7 @@ public class Gala.Plugins.PIP.SelectionArea : CanvasActor {
10997
return true;
11098
}
11199

112-
#if HAS_MUTTER45
113100
public override bool motion_event (Clutter.Event e) {
114-
#else
115-
public override bool motion_event (Clutter.MotionEvent e) {
116-
#endif
117101
if (!clicked) {
118102
return true;
119103
}

plugins/template/Main.vala

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,11 +69,7 @@ namespace Gala.Plugins.Template {
6969
wm.ui_group.add_child (red_box);
7070
}
7171

72-
#if HAS_MUTTER45
7372
private bool turn_green (Clutter.Event event) {
74-
#else
75-
private bool turn_green (Clutter.ButtonEvent event) {
76-
#endif
7773
red_box.background_color = { 0, 255, 0, 255 };
7874
return true;
7975
}

0 commit comments

Comments
 (0)