import mutter-40.9-14.el9
This commit is contained in:
parent
6a46d2de32
commit
22e45bd511
@ -0,0 +1,34 @@
|
||||
From ba25271408a32a2a73a82acc6e094a611001c9f0 Mon Sep 17 00:00:00 2001
|
||||
From: Carlos Garnacho <carlosg@gnome.org>
|
||||
Date: Fri, 16 Dec 2022 23:06:33 +0100
|
||||
Subject: [PATCH] backends: Only apply EDID-based tablet mapping heuristic on
|
||||
integrated devices
|
||||
|
||||
These are the ones attached to a display, thus they are the ones that may need
|
||||
help from this heuristic. Non-integrated tablets (e.g. Intuos) will default to
|
||||
the span of all monitors.
|
||||
|
||||
Fixes mapping of opaque tablets if a display-integrated tablet of the same
|
||||
brand is also plugged in.
|
||||
|
||||
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2767>
|
||||
---
|
||||
src/backends/meta-input-mapper.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/backends/meta-input-mapper.c b/src/backends/meta-input-mapper.c
|
||||
index cc75f14e8..71d193e5f 100644
|
||||
--- a/src/backends/meta-input-mapper.c
|
||||
+++ b/src/backends/meta-input-mapper.c
|
||||
@@ -455,7 +455,7 @@ guess_candidates (MetaInputMapper *mapper,
|
||||
|
||||
g_assert (META_IS_MONITOR (l->data));
|
||||
|
||||
- if (match_edid (input, l->data, &edid_match))
|
||||
+ if (integrated && match_edid (input, l->data, &edid_match))
|
||||
match.score |= 1 << edid_match;
|
||||
|
||||
if (integrated && match_size (input, l->data))
|
||||
--
|
||||
2.38.1
|
||||
|
@ -0,0 +1,52 @@
|
||||
From 5cd66485cdd99068dab0f57d7f64d3ef294b0037 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
|
||||
Date: Wed, 4 Aug 2021 19:30:10 +0200
|
||||
Subject: [PATCH] clutter/text: Don't query preferred size without allocation
|
||||
|
||||
The size request functions query the resource scale, which hits
|
||||
an assert if headless. The returned sizes are already only used
|
||||
when clutter_actor_has_allocation() is true, so this doesn't
|
||||
change the condition for calling either redraw or relayout.
|
||||
|
||||
https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4522
|
||||
|
||||
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1956>
|
||||
---
|
||||
clutter/clutter/clutter-text.c | 17 +++++++++++------
|
||||
1 file changed, 11 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/clutter/clutter/clutter-text.c b/clutter/clutter/clutter-text.c
|
||||
index 45c7eac56b..80e53ea32f 100644
|
||||
--- a/clutter/clutter/clutter-text.c
|
||||
+++ b/clutter/clutter/clutter-text.c
|
||||
@@ -4797,16 +4797,21 @@ static void
|
||||
clutter_text_queue_redraw_or_relayout (ClutterText *self)
|
||||
{
|
||||
ClutterActor *actor = CLUTTER_ACTOR (self);
|
||||
- gfloat preferred_width;
|
||||
- gfloat preferred_height;
|
||||
+ float preferred_width = -1.;
|
||||
+ float preferred_height = -1.;
|
||||
|
||||
clutter_text_dirty_cache (self);
|
||||
|
||||
- /* we're using our private implementations here to avoid the caching done by ClutterActor */
|
||||
- clutter_text_get_preferred_width (actor, -1, NULL, &preferred_width);
|
||||
- clutter_text_get_preferred_height (actor, preferred_width, NULL, &preferred_height);
|
||||
+ if (clutter_actor_has_allocation (actor))
|
||||
+ {
|
||||
+ /* we're using our private implementations here to avoid the caching done by ClutterActor */
|
||||
+ clutter_text_get_preferred_width (actor, -1, NULL, &preferred_width);
|
||||
+ clutter_text_get_preferred_height (actor, preferred_width, NULL,
|
||||
+ &preferred_height);
|
||||
+ }
|
||||
|
||||
- if (clutter_actor_has_allocation (actor) &&
|
||||
+ if (preferred_width > 0 &&
|
||||
+ preferred_height > 0 &&
|
||||
fabsf (preferred_width - clutter_actor_get_width (actor)) <= 0.001 &&
|
||||
fabsf (preferred_height - clutter_actor_get_height (actor)) <= 0.001)
|
||||
clutter_text_queue_redraw (actor);
|
||||
--
|
||||
2.31.1
|
||||
|
@ -0,0 +1,45 @@
|
||||
From 168a47c9ebefaeca6cc25fcbc0d41ac50c16f400 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl@gmail.com>
|
||||
Date: Wed, 1 Feb 2023 10:07:53 +0100
|
||||
Subject: [PATCH] gpu/kms: Report that we can have outputs if we have
|
||||
connectors
|
||||
|
||||
As part of https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/525
|
||||
(introduction of transactional KMS API), the logic determining whether a
|
||||
GPU can have outputs was changed from whether any connectors existed to
|
||||
whether any connected connectors existed. That effectively meant that we
|
||||
wouldn't attempt to start at all if there were no monitors connected
|
||||
while starting up.
|
||||
|
||||
This was unintentional, so lets revert back the expected behavior.
|
||||
---
|
||||
src/backends/native/meta-gpu-kms.c | 13 +------------
|
||||
1 file changed, 1 insertion(+), 12 deletions(-)
|
||||
|
||||
diff --git a/src/backends/native/meta-gpu-kms.c b/src/backends/native/meta-gpu-kms.c
|
||||
index e81c90a022..2756bddb26 100644
|
||||
--- a/src/backends/native/meta-gpu-kms.c
|
||||
+++ b/src/backends/native/meta-gpu-kms.c
|
||||
@@ -399,18 +399,7 @@ meta_gpu_kms_read_current (MetaGpu *gpu,
|
||||
gboolean
|
||||
meta_gpu_kms_can_have_outputs (MetaGpuKms *gpu_kms)
|
||||
{
|
||||
- GList *l;
|
||||
- int n_connected_connectors = 0;
|
||||
-
|
||||
- for (l = meta_kms_device_get_connectors (gpu_kms->kms_device); l; l = l->next)
|
||||
- {
|
||||
- MetaKmsConnector *kms_connector = l->data;
|
||||
-
|
||||
- if (meta_kms_connector_get_current_state (kms_connector))
|
||||
- n_connected_connectors++;
|
||||
- }
|
||||
-
|
||||
- return n_connected_connectors > 0;
|
||||
+ return !!meta_kms_device_get_connectors (gpu_kms->kms_device);
|
||||
}
|
||||
|
||||
MetaGpuKms *
|
||||
--
|
||||
2.39.1
|
||||
|
@ -0,0 +1,107 @@
|
||||
From 86000c32d64cea7be2e6ed911cb9ea5df1306c0e Mon Sep 17 00:00:00 2001
|
||||
From: Mario Limonciello <mario.limonciello@amd.com>
|
||||
Date: Thu, 18 Aug 2022 13:36:20 -0500
|
||||
Subject: [PATCH 1/2] output/kms: Add more heuristics to decide when to offer
|
||||
fallback modes
|
||||
|
||||
If the panel is connected via eDP and supports more than one mode
|
||||
at different resolutions don't try to add more.
|
||||
|
||||
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2586>
|
||||
(cherry picked from commit 96aa0fb8536eca579ceb1b17d83e19cf9e3e9e81)
|
||||
(cherry picked from commit 877cc3eb7d44e2886395151f763ec09bea350444)
|
||||
---
|
||||
src/backends/native/meta-output-kms.c | 56 +++++++++++++++++++++------
|
||||
1 file changed, 44 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/src/backends/native/meta-output-kms.c b/src/backends/native/meta-output-kms.c
|
||||
index f35cdf04e1..9adc20bfd9 100644
|
||||
--- a/src/backends/native/meta-output-kms.c
|
||||
+++ b/src/backends/native/meta-output-kms.c
|
||||
@@ -224,6 +224,45 @@ compare_modes (const void *one,
|
||||
meta_crtc_mode_get_name (crtc_mode_two));
|
||||
}
|
||||
|
||||
+static gboolean
|
||||
+are_all_modes_equally_sized (MetaOutputInfo *output_info)
|
||||
+{
|
||||
+ const MetaCrtcModeInfo *base =
|
||||
+ meta_crtc_mode_get_info (output_info->modes[0]);
|
||||
+ int i;
|
||||
+
|
||||
+ for (i = 1; i < output_info->n_modes; i++)
|
||||
+ {
|
||||
+ const MetaCrtcModeInfo *mode_info =
|
||||
+ meta_crtc_mode_get_info (output_info->modes[i]);
|
||||
+
|
||||
+ if (base->width != mode_info->width ||
|
||||
+ base->height != mode_info->height)
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+
|
||||
+ return TRUE;
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
+maybe_add_fallback_modes (const MetaKmsConnectorState *connector_state,
|
||||
+ MetaOutputInfo *output_info,
|
||||
+ MetaGpuKms *gpu_kms,
|
||||
+ MetaKmsConnector *kms_connector)
|
||||
+{
|
||||
+ if (!connector_state->has_scaling)
|
||||
+ return;
|
||||
+
|
||||
+ if (output_info->connector_type == DRM_MODE_CONNECTOR_eDP &&
|
||||
+ !are_all_modes_equally_sized (output_info))
|
||||
+ return;
|
||||
+
|
||||
+ meta_topic (META_DEBUG_KMS, "Adding common modes to connector %u on %s",
|
||||
+ meta_kms_connector_get_id (kms_connector),
|
||||
+ meta_gpu_kms_get_file_path (gpu_kms));
|
||||
+ add_common_modes (output_info, gpu_kms);
|
||||
+}
|
||||
+
|
||||
static gboolean
|
||||
init_output_modes (MetaOutputInfo *output_info,
|
||||
MetaGpuKms *gpu_kms,
|
||||
@@ -252,14 +291,7 @@ init_output_modes (MetaOutputInfo *output_info,
|
||||
output_info->preferred_mode = output_info->modes[i];
|
||||
}
|
||||
|
||||
- if (connector_state->has_scaling)
|
||||
- {
|
||||
- meta_topic (META_DEBUG_KMS, "Adding common modes to connector %u on %s",
|
||||
- meta_kms_connector_get_id (kms_connector),
|
||||
- meta_gpu_kms_get_file_path (gpu_kms));
|
||||
- add_common_modes (output_info, gpu_kms);
|
||||
- }
|
||||
-
|
||||
+ maybe_add_fallback_modes (connector_state, output_info, gpu_kms, kms_connector);
|
||||
if (!output_info->modes)
|
||||
{
|
||||
g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
|
||||
@@ -322,6 +354,10 @@ meta_output_kms_new (MetaGpuKms *gpu_kms,
|
||||
output_info->height_mm = connector_state->height_mm;
|
||||
}
|
||||
|
||||
+ drm_connector_type = meta_kms_connector_get_connector_type (kms_connector);
|
||||
+ output_info->connector_type =
|
||||
+ meta_kms_connector_type_from_drm (drm_connector_type);
|
||||
+
|
||||
if (!init_output_modes (output_info, gpu_kms, kms_connector, error))
|
||||
return NULL;
|
||||
|
||||
@@ -349,10 +385,6 @@ meta_output_kms_new (MetaGpuKms *gpu_kms,
|
||||
|
||||
meta_output_info_parse_edid (output_info, connector_state->edid_data);
|
||||
|
||||
- drm_connector_type = meta_kms_connector_get_connector_type (kms_connector);
|
||||
- output_info->connector_type =
|
||||
- meta_kms_connector_type_from_drm (drm_connector_type);
|
||||
-
|
||||
output_info->tile_info = connector_state->tile_info;
|
||||
|
||||
output = g_object_new (META_TYPE_OUTPUT_KMS,
|
||||
--
|
||||
2.37.1
|
||||
|
@ -0,0 +1,47 @@
|
||||
From cd8b90a7a7185c3f177469d1a37654a9e8539cd1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl@gmail.com>
|
||||
Date: Thu, 29 Sep 2022 14:23:55 +0200
|
||||
Subject: [PATCH 2/2] output/kms: Don't attemp to add common modes on
|
||||
connectors without modes
|
||||
|
||||
We have no way to sanely add safe modes if there are no modes we can
|
||||
compare with, thus don't try.
|
||||
|
||||
Fixes the following crash:
|
||||
|
||||
#0 are_all_modes_equally_sized at ../src/backends/native/meta-output-kms.c:284
|
||||
#1 maybe_add_fallback_modes at ../src/backends/native/meta-output-kms.c:310
|
||||
#2 init_output_modes at ../src/backends/native/meta-output-kms.c:347
|
||||
#3 meta_output_kms_new at ../src/backends/native/meta-output-kms.c:414
|
||||
#4 init_outputs at ../src/backends/native/meta-gpu-kms.c:332
|
||||
#5 meta_gpu_kms_read_current at ../src/backends/native/meta-gpu-kms.c:368
|
||||
#6 meta_gpu_kms_new at ../src/backends/native/meta-gpu-kms.c:403
|
||||
#7 create_gpu_from_udev_device at ../src/backends/native/meta-backend-native.c:461
|
||||
#8 init_gpus at ../src/backends/native/meta-backend-native.c:551
|
||||
#9 meta_backend_native_initable_init at ../src/backends/native/meta-backend-native.c:632
|
||||
|
||||
Fixes: 877cc3eb7d44e2886395151f763ec09bea350444
|
||||
Related: https://bugzilla.redhat.com/show_bug.cgi?id=2127801
|
||||
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2646>
|
||||
(cherry picked from commit 2c8adb19660cb2cd53381372833e088962437d3b)
|
||||
---
|
||||
src/backends/native/meta-output-kms.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/src/backends/native/meta-output-kms.c b/src/backends/native/meta-output-kms.c
|
||||
index 9adc20bfd9..058ab7c053 100644
|
||||
--- a/src/backends/native/meta-output-kms.c
|
||||
+++ b/src/backends/native/meta-output-kms.c
|
||||
@@ -250,6 +250,9 @@ maybe_add_fallback_modes (const MetaKmsConnectorState *connector_state,
|
||||
MetaGpuKms *gpu_kms,
|
||||
MetaKmsConnector *kms_connector)
|
||||
{
|
||||
+ if (!connector_state->modes)
|
||||
+ return;
|
||||
+
|
||||
if (!connector_state->has_scaling)
|
||||
return;
|
||||
|
||||
--
|
||||
2.37.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 705818340dec181335b48ab73d6411e639daaeae Mon Sep 17 00:00:00 2001
|
||||
From 22fe64732e11199901d4a35f9d3c63d5d6deb3a3 Mon Sep 17 00:00:00 2001
|
||||
From: Carlos Garnacho <carlosg@gnome.org>
|
||||
Date: Tue, 1 Jun 2021 11:44:20 +0200
|
||||
Subject: [PATCH 1/6] backends/x11: Support synaptics configuration
|
||||
@ -6,11 +6,11 @@ Subject: [PATCH 1/6] backends/x11: Support synaptics configuration
|
||||
The code is taken mostly as-is from g-s-d, so we can drag the
|
||||
dead horse a bit longer.
|
||||
---
|
||||
src/backends/x11/meta-input-settings-x11.c | 275 +++++++++++++++++++++
|
||||
1 file changed, 275 insertions(+)
|
||||
src/backends/x11/meta-input-settings-x11.c | 274 +++++++++++++++++++++
|
||||
1 file changed, 274 insertions(+)
|
||||
|
||||
diff --git a/src/backends/x11/meta-input-settings-x11.c b/src/backends/x11/meta-input-settings-x11.c
|
||||
index 96390285a6..0631fd2fee 100644
|
||||
index 371e2f60e..426056390 100644
|
||||
--- a/src/backends/x11/meta-input-settings-x11.c
|
||||
+++ b/src/backends/x11/meta-input-settings-x11.c
|
||||
@@ -26,6 +26,7 @@
|
||||
@ -21,7 +21,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
#include <string.h>
|
||||
#include <X11/Xatom.h>
|
||||
#include <X11/extensions/XInput2.h>
|
||||
@@ -165,6 +166,184 @@ change_property (ClutterInputDevice *device,
|
||||
@@ -165,6 +166,183 @@ change_property (ClutterInputDevice *device,
|
||||
meta_XFree (data_ret);
|
||||
}
|
||||
|
||||
@ -45,7 +45,6 @@ index 96390285a6..0631fd2fee 100644
|
||||
+ gboolean left_handed)
|
||||
+{
|
||||
+ MetaDisplay *display = meta_get_display ();
|
||||
+ MetaX11Display *x11_display = display ? display->x11_display : NULL;
|
||||
+ MetaBackend *backend = meta_get_backend ();
|
||||
+ Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
|
||||
+ int device_id;
|
||||
@ -71,8 +70,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
+ XA_INTEGER, 8, tap_action, 7);
|
||||
+ meta_XFree (tap_action);
|
||||
+
|
||||
+ if (x11_display)
|
||||
+ meta_x11_error_trap_push (x11_display);
|
||||
+ clutter_x11_trap_x_errors();
|
||||
+ buttons = g_new (guchar, buttons_capacity);
|
||||
+ n_buttons = XGetDeviceButtonMapping (xdisplay, xdevice,
|
||||
+ buttons, buttons_capacity);
|
||||
@ -92,7 +90,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
+ XSetDeviceButtonMapping (xdisplay, xdevice, buttons, n_buttons);
|
||||
+ g_free (buttons);
|
||||
+
|
||||
+ if (x11_display && meta_x11_error_trap_pop_with_return (x11_display))
|
||||
+ if (clutter_x11_untrap_x_errors())
|
||||
+ {
|
||||
+ g_warning ("Could not set synaptics touchpad left-handed for %s",
|
||||
+ clutter_input_device_get_device_name (device));
|
||||
@ -107,7 +105,6 @@ index 96390285a6..0631fd2fee 100644
|
||||
+ gdouble speed)
|
||||
+{
|
||||
+ MetaDisplay *display = meta_get_display ();
|
||||
+ MetaX11Display *x11_display = display ? display->x11_display : NULL;
|
||||
+ MetaBackend *backend = meta_get_backend ();
|
||||
+ Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
|
||||
+ int device_id;
|
||||
@ -122,7 +119,10 @@ index 96390285a6..0631fd2fee 100644
|
||||
+ if (!xdevice)
|
||||
+ return;
|
||||
+ /* Get the list of feedbacks for the device */
|
||||
+ clutter_x11_trap_x_errors();
|
||||
+ states = XGetFeedbackControl (xdisplay, xdevice, &num_feedbacks);
|
||||
+ if (clutter_x11_untrap_x_errors())
|
||||
+ return;
|
||||
+ if (!states)
|
||||
+ return;
|
||||
+
|
||||
@ -167,8 +167,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
+ denominator = -1;
|
||||
+ }
|
||||
+
|
||||
+ if (x11_display)
|
||||
+ meta_x11_error_trap_push (x11_display);
|
||||
+ clutter_x11_trap_x_errors();
|
||||
+
|
||||
+ state = (XFeedbackState *) states;
|
||||
+
|
||||
@ -193,7 +192,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
+ state = (XFeedbackState *) ((char *) state + state->length);
|
||||
+ }
|
||||
+
|
||||
+ if (x11_display && meta_x11_error_trap_pop_with_return (x11_display))
|
||||
+ if (clutter_x11_untrap_x_errors())
|
||||
+ {
|
||||
+ g_warning ("Could not set synaptics touchpad acceleration for %s",
|
||||
+ clutter_input_device_get_device_name (device));
|
||||
@ -206,7 +205,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
static void
|
||||
meta_input_settings_x11_set_send_events (MetaInputSettings *settings,
|
||||
ClutterInputDevice *device,
|
||||
@@ -173,6 +352,13 @@ meta_input_settings_x11_set_send_events (MetaInputSettings *settings,
|
||||
@@ -173,6 +351,13 @@ meta_input_settings_x11_set_send_events (MetaInputSettings *settings,
|
||||
guchar values[2] = { 0 }; /* disabled, disabled-on-external-mouse */
|
||||
guchar *available;
|
||||
|
||||
@ -220,7 +219,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
available = get_property (device, "libinput Send Events Modes Available",
|
||||
XA_INTEGER, 8, 2);
|
||||
if (!available)
|
||||
@@ -225,6 +411,12 @@ meta_input_settings_x11_set_speed (MetaInputSettings *settings,
|
||||
@@ -225,6 +410,12 @@ meta_input_settings_x11_set_speed (MetaInputSettings *settings,
|
||||
Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
|
||||
gfloat value = speed;
|
||||
|
||||
@ -233,7 +232,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
change_property (device, "libinput Accel Speed",
|
||||
XInternAtom (xdisplay, "FLOAT", False),
|
||||
32, &value, 1);
|
||||
@@ -251,6 +443,19 @@ meta_input_settings_x11_set_left_handed (MetaInputSettings *settings,
|
||||
@@ -251,6 +442,19 @@ meta_input_settings_x11_set_left_handed (MetaInputSettings *settings,
|
||||
else
|
||||
{
|
||||
value = enabled ? 1 : 0;
|
||||
@ -253,7 +252,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
change_property (device, "libinput Left Handed Enabled",
|
||||
XA_INTEGER, 8, &value, 1);
|
||||
}
|
||||
@@ -274,6 +479,20 @@ meta_input_settings_x11_set_tap_enabled (MetaInputSettings *settings,
|
||||
@@ -274,6 +478,20 @@ meta_input_settings_x11_set_tap_enabled (MetaInputSettings *settings,
|
||||
{
|
||||
guchar value = (enabled) ? 1 : 0;
|
||||
|
||||
@ -274,7 +273,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
change_property (device, "libinput Tapping Enabled",
|
||||
XA_INTEGER, 8, &value, 1);
|
||||
}
|
||||
@@ -307,6 +526,27 @@ meta_input_settings_x11_set_invert_scroll (MetaInputSettings *settings,
|
||||
@@ -307,6 +525,27 @@ meta_input_settings_x11_set_invert_scroll (MetaInputSettings *settings,
|
||||
{
|
||||
guchar value = (inverted) ? 1 : 0;
|
||||
|
||||
@ -302,7 +301,7 @@ index 96390285a6..0631fd2fee 100644
|
||||
change_property (device, "libinput Natural Scrolling Enabled",
|
||||
XA_INTEGER, 8, &value, 1);
|
||||
}
|
||||
@@ -320,6 +560,41 @@ change_scroll_method (ClutterInputDevice *device,
|
||||
@@ -320,6 +559,41 @@ change_scroll_method (ClutterInputDevice *device,
|
||||
guchar *current = NULL;
|
||||
guchar *available = NULL;
|
||||
|
||||
@ -345,10 +344,10 @@ index 96390285a6..0631fd2fee 100644
|
||||
XA_INTEGER, 8, SCROLL_METHOD_NUM_FIELDS);
|
||||
if (!available || !available[method])
|
||||
--
|
||||
2.31.1
|
||||
2.36.1
|
||||
|
||||
|
||||
From 50c4733acf56b3b67a2706d32f5c455cb51f9458 Mon Sep 17 00:00:00 2001
|
||||
From 963ff120898e7e42d80d5761753e76adcf16c132 Mon Sep 17 00:00:00 2001
|
||||
From: Carlos Garnacho <carlosg@gnome.org>
|
||||
Date: Tue, 13 Feb 2018 11:44:40 +0100
|
||||
Subject: [PATCH 2/6] clutter: Extend touchpad device property check for
|
||||
@ -361,7 +360,7 @@ to get the device type may fall short.
|
||||
1 file changed, 15 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/backends/x11/meta-seat-x11.c b/src/backends/x11/meta-seat-x11.c
|
||||
index d43834bd7b..73938e22e0 100644
|
||||
index d43834bd7..73938e22e 100644
|
||||
--- a/src/backends/x11/meta-seat-x11.c
|
||||
+++ b/src/backends/x11/meta-seat-x11.c
|
||||
@@ -246,7 +246,8 @@ is_touch_device (XIAnyClassInfo **classes,
|
||||
@ -403,10 +402,10 @@ index d43834bd7b..73938e22e0 100644
|
||||
get_device_ids (XIDeviceInfo *info,
|
||||
char **vendor_id,
|
||||
--
|
||||
2.31.1
|
||||
2.36.1
|
||||
|
||||
|
||||
From 307970305d11cdca1b97c53c85bda8b809ff4f0f Mon Sep 17 00:00:00 2001
|
||||
From 86cc1b46dae01da619980af826eb9bf81cf31143 Mon Sep 17 00:00:00 2001
|
||||
From: Rui Matos <tiagomatos@gmail.com>
|
||||
Date: Mon, 9 Oct 2017 18:39:52 +0200
|
||||
Subject: [PATCH 3/6] backends/x11: Add a synaptics check for two finger scroll
|
||||
@ -421,10 +420,10 @@ isn't.
|
||||
1 file changed, 11 insertions(+)
|
||||
|
||||
diff --git a/src/backends/x11/meta-input-settings-x11.c b/src/backends/x11/meta-input-settings-x11.c
|
||||
index 0631fd2fee..2ac080127c 100644
|
||||
index 426056390..db2b2a4fb 100644
|
||||
--- a/src/backends/x11/meta-input-settings-x11.c
|
||||
+++ b/src/backends/x11/meta-input-settings-x11.c
|
||||
@@ -638,6 +638,17 @@ meta_input_settings_x11_has_two_finger_scroll (MetaInputSettings *settings,
|
||||
@@ -637,6 +637,17 @@ meta_input_settings_x11_has_two_finger_scroll (MetaInputSettings *settings,
|
||||
guchar *available = NULL;
|
||||
gboolean has_two_finger = TRUE;
|
||||
|
||||
@ -443,10 +442,10 @@ index 0631fd2fee..2ac080127c 100644
|
||||
XA_INTEGER, 8, SCROLL_METHOD_NUM_FIELDS);
|
||||
if (!available || !available[SCROLL_METHOD_FIELD_2FG])
|
||||
--
|
||||
2.31.1
|
||||
2.36.1
|
||||
|
||||
|
||||
From cba31f88ddbfb7355de1daa34397aba8e8607765 Mon Sep 17 00:00:00 2001
|
||||
From 32e2da07eeb1f9edcf03751285a756ab1acca6a8 Mon Sep 17 00:00:00 2001
|
||||
From: Rui Matos <tiagomatos@gmail.com>
|
||||
Date: Mon, 9 Oct 2017 18:55:56 +0200
|
||||
Subject: [PATCH 4/6] backends/x11: Add disable while typing support for
|
||||
@ -459,7 +458,7 @@ syndaemon when the synaptics driver is being used.
|
||||
1 file changed, 112 insertions(+)
|
||||
|
||||
diff --git a/src/backends/x11/meta-input-settings-x11.c b/src/backends/x11/meta-input-settings-x11.c
|
||||
index 2ac080127c..2658b82172 100644
|
||||
index db2b2a4fb..bf9d769e9 100644
|
||||
--- a/src/backends/x11/meta-input-settings-x11.c
|
||||
+++ b/src/backends/x11/meta-input-settings-x11.c
|
||||
@@ -35,6 +35,9 @@
|
||||
@ -481,7 +480,7 @@ index 2ac080127c..2658b82172 100644
|
||||
} MetaInputSettingsX11Private;
|
||||
|
||||
G_DEFINE_TYPE_WITH_PRIVATE (MetaInputSettingsX11, meta_input_settings_x11,
|
||||
@@ -344,6 +349,107 @@ change_synaptics_speed (ClutterInputDevice *device,
|
||||
@@ -343,6 +348,107 @@ change_synaptics_speed (ClutterInputDevice *device,
|
||||
XCloseDevice (xdisplay, xdevice);
|
||||
}
|
||||
|
||||
@ -589,7 +588,7 @@ index 2ac080127c..2658b82172 100644
|
||||
static void
|
||||
meta_input_settings_x11_set_send_events (MetaInputSettings *settings,
|
||||
ClutterInputDevice *device,
|
||||
@@ -468,6 +574,12 @@ meta_input_settings_x11_set_disable_while_typing (MetaInputSettings *settings,
|
||||
@@ -467,6 +573,12 @@ meta_input_settings_x11_set_disable_while_typing (MetaInputSettings *settings,
|
||||
{
|
||||
guchar value = (enabled) ? 1 : 0;
|
||||
|
||||
@ -603,10 +602,10 @@ index 2ac080127c..2658b82172 100644
|
||||
XA_INTEGER, 8, &value, 1);
|
||||
}
|
||||
--
|
||||
2.31.1
|
||||
2.36.1
|
||||
|
||||
|
||||
From 354d34263534d0c7a5c7f7169d8b4a3dba79491c Mon Sep 17 00:00:00 2001
|
||||
From 6da0bfe86f416d3cfc5cc6993e8e2f6ca255e85a Mon Sep 17 00:00:00 2001
|
||||
From: Carlos Garnacho <carlosg@gnome.org>
|
||||
Date: Wed, 13 Jun 2018 13:48:24 +0200
|
||||
Subject: [PATCH 5/6] clutter: Only reset scroll axes on slave devices
|
||||
@ -617,7 +616,7 @@ As a plus, unknown source device IDs will just warn instead of crash.
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/backends/x11/meta-seat-x11.c b/src/backends/x11/meta-seat-x11.c
|
||||
index 73938e22e0..6d2c7d3740 100644
|
||||
index 73938e22e..6d2c7d374 100644
|
||||
--- a/src/backends/x11/meta-seat-x11.c
|
||||
+++ b/src/backends/x11/meta-seat-x11.c
|
||||
@@ -2362,7 +2362,9 @@ meta_seat_x11_translate_event (MetaSeatX11 *seat,
|
||||
@ -632,10 +631,10 @@ index 73938e22e0..6d2c7d3740 100644
|
||||
clutter_event_set_device (event, device);
|
||||
clutter_event_set_source_device (event, source_device);
|
||||
--
|
||||
2.31.1
|
||||
2.36.1
|
||||
|
||||
|
||||
From b7f94b5dd09953d5a4c8aee1b79491d71f8c1e0e Mon Sep 17 00:00:00 2001
|
||||
From da60cf38c7fcec68f8e79a8a3a174e551c07a64a Mon Sep 17 00:00:00 2001
|
||||
From: Rui Matos <tiagomatos@gmail.com>
|
||||
Date: Tue, 10 Oct 2017 19:07:27 +0200
|
||||
Subject: [PATCH 6/6] backends/x11: Support plain old X device configuration
|
||||
@ -647,10 +646,10 @@ bits specific for xorg-x11-drv-evdev devices.
|
||||
1 file changed, 75 insertions(+), 23 deletions(-)
|
||||
|
||||
diff --git a/src/backends/x11/meta-input-settings-x11.c b/src/backends/x11/meta-input-settings-x11.c
|
||||
index 2658b82172..80bc33c6b5 100644
|
||||
index bf9d769e9..49dcb74f1 100644
|
||||
--- a/src/backends/x11/meta-input-settings-x11.c
|
||||
+++ b/src/backends/x11/meta-input-settings-x11.c
|
||||
@@ -185,10 +185,23 @@ is_device_synaptics (ClutterInputDevice *device)
|
||||
@@ -185,17 +185,30 @@ is_device_synaptics (ClutterInputDevice *device)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@ -676,8 +675,7 @@ index 2658b82172..80bc33c6b5 100644
|
||||
+ gboolean left_handed)
|
||||
{
|
||||
MetaDisplay *display = meta_get_display ();
|
||||
MetaX11Display *x11_display = display ? display->x11_display : NULL;
|
||||
@@ -196,7 +209,7 @@ change_synaptics_tap_left_handed (ClutterInputDevice *device,
|
||||
MetaBackend *backend = meta_get_backend ();
|
||||
Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
|
||||
int device_id;
|
||||
XDevice *xdevice;
|
||||
@ -686,7 +684,7 @@ index 2658b82172..80bc33c6b5 100644
|
||||
guint buttons_capacity = 16, n_buttons;
|
||||
|
||||
device_id = meta_input_device_x11_get_device_id (device);
|
||||
@@ -204,19 +217,6 @@ change_synaptics_tap_left_handed (ClutterInputDevice *device,
|
||||
@@ -203,19 +216,6 @@ change_synaptics_tap_left_handed (ClutterInputDevice *device,
|
||||
if (!xdevice)
|
||||
return;
|
||||
|
||||
@ -703,12 +701,12 @@ index 2658b82172..80bc33c6b5 100644
|
||||
- XA_INTEGER, 8, tap_action, 7);
|
||||
- meta_XFree (tap_action);
|
||||
-
|
||||
if (x11_display)
|
||||
meta_x11_error_trap_push (x11_display);
|
||||
clutter_x11_trap_x_errors();
|
||||
buttons = g_new (guchar, buttons_capacity);
|
||||
@@ -240,17 +240,39 @@ change_synaptics_tap_left_handed (ClutterInputDevice *device,
|
||||
n_buttons = XGetDeviceButtonMapping (xdisplay, xdevice,
|
||||
@@ -238,17 +238,39 @@ change_synaptics_tap_left_handed (ClutterInputDevice *device,
|
||||
|
||||
if (x11_display && meta_x11_error_trap_pop_with_return (x11_display))
|
||||
if (clutter_x11_untrap_x_errors())
|
||||
{
|
||||
- g_warning ("Could not set synaptics touchpad left-handed for %s",
|
||||
+ g_warning ("Could not set left-handed for %s",
|
||||
@ -749,8 +747,8 @@ index 2658b82172..80bc33c6b5 100644
|
||||
+ gdouble speed)
|
||||
{
|
||||
MetaDisplay *display = meta_get_display ();
|
||||
MetaX11Display *x11_display = display ? display->x11_display : NULL;
|
||||
@@ -349,6 +371,23 @@ change_synaptics_speed (ClutterInputDevice *device,
|
||||
MetaBackend *backend = meta_get_backend ();
|
||||
@@ -348,6 +370,23 @@ change_synaptics_speed (ClutterInputDevice *device,
|
||||
XCloseDevice (xdisplay, xdevice);
|
||||
}
|
||||
|
||||
@ -774,7 +772,7 @@ index 2658b82172..80bc33c6b5 100644
|
||||
/* Ensure that syndaemon dies together with us, to avoid running several of
|
||||
* them */
|
||||
static void
|
||||
@@ -517,9 +556,10 @@ meta_input_settings_x11_set_speed (MetaInputSettings *settings,
|
||||
@@ -516,9 +555,10 @@ meta_input_settings_x11_set_speed (MetaInputSettings *settings,
|
||||
Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
|
||||
gfloat value = speed;
|
||||
|
||||
@ -787,7 +785,7 @@ index 2658b82172..80bc33c6b5 100644
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -561,6 +601,11 @@ meta_input_settings_x11_set_left_handed (MetaInputSettings *settings,
|
||||
@@ -560,6 +600,11 @@ meta_input_settings_x11_set_left_handed (MetaInputSettings *settings,
|
||||
g_object_unref (settings);
|
||||
return;
|
||||
}
|
||||
@ -799,7 +797,7 @@ index 2658b82172..80bc33c6b5 100644
|
||||
|
||||
change_property (device, "libinput Left Handed Enabled",
|
||||
XA_INTEGER, 8, &value, 1);
|
||||
@@ -778,7 +823,14 @@ meta_input_settings_x11_set_scroll_button (MetaInputSettings *settings,
|
||||
@@ -777,7 +822,14 @@ meta_input_settings_x11_set_scroll_button (MetaInputSettings *settings,
|
||||
{
|
||||
gchar lock = button_lock;
|
||||
|
||||
@ -815,5 +813,5 @@ index 2658b82172..80bc33c6b5 100644
|
||||
XA_CARDINAL, 32, &button, 1);
|
||||
change_property (device, "libinput Button Scrolling Button Lock Enabled",
|
||||
--
|
||||
2.31.1
|
||||
2.36.1
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
Name: mutter
|
||||
Version: 40.9
|
||||
Release: 9%{?dist}
|
||||
Release: 14%{?dist}
|
||||
Summary: Window and compositing manager based on Clutter
|
||||
|
||||
License: GPLv2+
|
||||
@ -101,6 +101,16 @@ Patch40: 0001-events-Pass-CurrentTime-to-XIAllowEvents-when-unfree.patch
|
||||
# Backport night light availability property (#2057154)
|
||||
Patch41: 0001-monitor-manager-Add-NightLightSupported-property-to-.patch
|
||||
|
||||
# Don't add common modes if panel already has (#2125032)
|
||||
Patch42: 0001-output-kms-Add-more-heuristics-to-decide-when-to-off.patch
|
||||
Patch43: 0002-output-kms-Don-t-attemp-to-add-common-modes-on-conne.patch
|
||||
|
||||
Patch44: 0001-backends-Only-apply-EDID-based-tablet-mapping-heuris.patch
|
||||
|
||||
# Allow starting headless again (#2116363)
|
||||
Patch45: 0001-gpu-kms-Report-that-we-can-have-outputs-if-we-have-c.patch
|
||||
Patch46: 0001-clutter-text-Don-t-query-preferred-size-without-allo.patch
|
||||
|
||||
BuildRequires: chrpath
|
||||
BuildRequires: pango-devel
|
||||
BuildRequires: startup-notification-devel
|
||||
@ -191,6 +201,7 @@ behaviors to meet the needs of the environment.
|
||||
%package devel
|
||||
Summary: Development package for %{name}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Requires: mesa-libEGL-devel
|
||||
|
||||
%description devel
|
||||
Header files and libraries for developing Mutter plugins. Also includes
|
||||
@ -247,6 +258,26 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop
|
||||
%{_datadir}/mutter-%{mutter_api_version}/tests
|
||||
|
||||
%changelog
|
||||
* Wed Feb 01 2023 Jonas Ådahl <jadahl@redhat.com>) - 40.9-14
|
||||
- Allow starting headless again
|
||||
Resolves: #2116363
|
||||
|
||||
* Tue Jan 03 2023 Carlos Garnacho <cgarnach@redhat.com>) - 40.9-13
|
||||
- Do not apply EDID mapping heuristics to non-integrated tablets
|
||||
Resolves: #2047341
|
||||
|
||||
* Tue Dec 06 2022 Jonas Ådahl <jadahl@redhat.com>) - 40.9-12
|
||||
- Add missing dependency for mutter-devel
|
||||
Resolves: #2004832
|
||||
|
||||
* Tue Dec 06 2022 Olivier Fourdan <ofourdan@redhat.com> - 40.9-11
|
||||
- Fix downstream synaptics patches breaking xdmcp
|
||||
Resolves: #2092452
|
||||
|
||||
* Thu Oct 20 2022 Jonas Ådahl <jadahl@redhat.com>) - 40.9-10
|
||||
- Don't add common modes if panel already has
|
||||
Resolves: #2125032
|
||||
|
||||
* Tue Aug 16 2022 Jonas Ådahl <jadahl@redhat.com>) - 40.9-9
|
||||
- Backport night light availability property
|
||||
Resolves: #2057154
|
||||
@ -315,7 +346,7 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop
|
||||
- Fixes a race in wl_seat capabilities
|
||||
Resolves: #2003032
|
||||
|
||||
* Wed Aug 27 2021 Florian Müllner <fmuellner@redhat.com> - 40.4-2
|
||||
* Fri Aug 27 2021 Florian Müllner <fmuellner@redhat.com> - 40.4-2
|
||||
- Remove firstboot(windowmanager) provide
|
||||
Resolves: #1975355
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user