1
0
Fork 0
Commit graph

32648 commits

Author SHA1 Message Date
Jonas Ådahl
c3cfd5266a context: Add 'nick' property
A nick property is a bit similar to the nick of a GObject property, in
that it's a shorter version of the name. It's intended to be used to
store state on the file system, where the state depends on the desktop
environment being used. E.g. gnome-shell sets the name "GNOME Shell",
which is, if no nick is explicitly set, transformed into the nick
"gnome-shell", which will be used for file paths.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3825>
2024-09-14 13:47:21 +00:00
Jonas Ådahl
af250506fb kms/impl-device: Queue result when discarding submitted update
The result will allow adequate state tracking to take place where the
update was posted.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3999>
2024-09-12 14:23:34 +00:00
Michel Dänzer
0d9fd1ead7 kms/impl-device: Destroy submitted update in disarm_all_deadline_timers
And rename it to disarm_all_frame_sources.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3999>
2024-09-12 14:23:34 +00:00
Michel Dänzer
42290730e8 kms/impl-device: Merge in submitted update in process_mode_set_update
This has to be done for all CRTCs of the device, not only those with a
modeset, which requires merging in the pending updates for all CRTCs as
well.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3999>
2024-09-12 14:23:34 +00:00
Michel Dänzer
b2761819e4 kms/impl-device/atomic: Leave implicit sync enabled for modeset updates
Preparation for next commit, which may merge multiple KMS updates with
sync_fds for modesets. Waiting for all sync_fds to signal before
processing the merged KMS update would be rather involved, for now just
leave implicit sync enabled for it. We're still relying on implicit sync
for modesets in general anyway.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3999>
2024-09-12 14:23:34 +00:00
Rūdolfs Mazurs
969f3a5ae4 Update Latvian translation 2024-09-11 19:30:07 +00:00
Peter Hutterer
756992c841 input-settings/native: Use the libinput matrix if we don't have one ourselves
If our calibration matrix (the "area") is the default, use libinput's
default matrix instead. Worst case this is the unity matrix anyway, best
case it uses the matrix set in e.g. the LIBINPUT_CALIBRATION_MATRIX
property.

Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/2939
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3846>
2024-09-11 11:50:08 +00:00
Florian Müllner
519ec32ac8 ci: Restrict use of "Fixes #123"
Our convention is to use "Fixes" lines for references commits
(like belated "fixups") and use "closes" for issues.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4017>
2024-09-11 00:44:52 +02:00
Florian Müllner
90d36b8821 ci: Extend "closes" rule
Gitlab also recognizes variants like "close #123" or "Closed #123".

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4017>
2024-09-11 00:44:52 +02:00
Ask Hjorth Larsen
a6207cd1d8 Update Danish translation 2024-09-10 20:39:01 +00:00
Rafael Fontenelle
8f3cfcafd9 Update Brazilian Portuguese translation 2024-09-10 16:09:39 +00:00
Simon McVittie
b5d5169c5e tests: Remove duplicate vx239-calibrated.icc
Now that we copy this into a temporary XDG_DATA_HOME, we don't need
to have it duplicated in the source tree as well.

Signed-off-by: Simon McVittie <smcv@debian.org>
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4012>
2024-09-10 15:29:26 +00:00
Simon McVittie
0024592541 tests/color-management: Use the inherited temporary XDG_DATA_HOME
Previously these tests tried to write to /usr when run as an
installed-test, which happens to work on Gitlab-CI because we're running
as root inside a container, but will not work when running in a more
realistic scenario as an unprivileged user (which is how Debian's
autopkgtest framework runs this test suite).

This also avoids leaving non-package-manager-managed detritus in /usr.

In color-management-tests, we can just delete the code that sets
XDG_DATA_HOME.

In color-management-profile-conflict-test, we also need to copy
the conflicting vx239-calibrated.icc into the temporary XDG_DATA_HOME
to get onto the code path that this test is intended to exercise.

Resolves: https://gitlab.gnome.org/GNOME/mutter/-/issues/3658
Signed-off-by: Simon McVittie <smcv@debian.org>
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4012>
2024-09-10 15:29:26 +00:00
Simon McVittie
19f8948164 tests: Create a temporary XDG_CACHE_HOME
For completeness.

Signed-off-by: Simon McVittie <smcv@debian.org>
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4012>
2024-09-10 15:29:26 +00:00
Simon McVittie
24f4db3432 tests: Create a temporary XDG_CONFIG_HOME
XDG_CONFIG_DIR is not part of the basedirs spec. Use XDG_CONFIG_HOME
instead, which is probably what was intended.

Signed-off-by: Simon McVittie <smcv@debian.org>
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4012>
2024-09-10 15:29:26 +00:00
Simon McVittie
642b672b70 tests: Create a temporary XDG_DATA_HOME to run each test
This will avoid some tests needing to write to /usr when run as
installed-tests.

Helps: https://gitlab.gnome.org/GNOME/mutter/-/issues/3658
Signed-off-by: Simon McVittie <smcv@debian.org>
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4012>
2024-09-10 15:29:26 +00:00
Quentin PAGÈS
d7a5f364c9 Update Occitan translation 2024-09-10 14:13:35 +00:00
Artur S0
52991021a1 Update Russian translation 2024-09-10 12:07:35 +00:00
Andi Chandler
983f8d3186 Update British English translation 2024-09-10 10:28:36 +00:00
Daniel
ffc3eb4ef7 Updated Spanish translation 2024-09-09 12:41:35 +02:00
Peter Hutterer
ed15460526 ci: Deny a plain "Closes: #123" message in the commit message
We need the full link so let's warn contributors about this instead of
having reviewers pointing this out.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4013>
2024-09-09 08:22:23 +00:00
Andika Triwidada
0210f955d2 Update Indonesian translation 2024-09-09 08:04:17 +00:00
Balázs Úr
57c1679ecb Update Hungarian translation 2024-09-08 22:59:59 +00:00
Aurimas Černius
1c9477196a Update Lithuanian translation 2024-09-08 18:57:55 +00:00
Piotr Drąg
4576c8a4a5 Update Polish translation 2024-09-08 17:28:44 +02:00
Hugo Carvalho
d4d8d517ac Update Portuguese translation 2024-09-08 10:22:49 +00:00
Asier Sarasua Garmendia
aa3437245b Update Basque translation 2024-09-08 07:52:25 +00:00
Ekaterine Papava
5f6d67dd12 Update Georgian translation 2024-09-08 04:00:08 +00:00
Anders Jonsson
90e249a174 Update Swedish translation 2024-09-08 00:04:46 +00:00
Alexander Shopov
a0b6e1e4c9 Update Bulgarian translation 2024-09-07 16:05:23 +00:00
nibon7
148ab84b83 Fix build when libwacom is disabled
Fixes: da828c2fc ("x11/input-device: Stop using deprecated libwacom API")
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3996>
2024-09-06 21:37:07 +08:00
Sebastian Wick
be8e1ee96a ci: Run the sysext job only on runners tagged with x86_64_v3
The x86_64_v2 runners hang on pulling the docker image. This should be
removed when the runners are all updated.

Related: https://gitlab.gnome.org/Infrastructure/Infrastructure/-/issues/1665
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4008>
2024-09-06 13:50:35 +02:00
Danial Behzadi
f68cd634b9 Update Persian translation 2024-09-05 23:42:26 +00:00
Daniel Rusek
ab4840d64d Update Czech translation 2024-09-05 22:12:20 +00:00
Emin Tufan Çetin
fc08ed12c7 Update Turkish translation 2024-09-05 18:45:56 +00:00
Yaron Shahrabani
5fd637f50d Update Hebrew translation 2024-09-05 12:56:02 +00:00
Yuri Chornoivan
c70fbed84e Update Ukrainian translation 2024-09-04 16:57:43 +00:00
Martin
db3bfbfeb4 Update Slovenian translation 2024-09-04 14:31:02 +00:00
Luming Zh
4ab2a22e08 Update Chinese (China) translation 2024-09-04 12:14:48 +00:00
Jonas Ådahl
e994fbf02c wayland/pointer-constraints: Warp pointer before destroying resource
We're retrieving the context from the constraint instance, and the
wl_resource_destroy() call indirectly destroys the instance, so warp
earlier to still have a valid instance while warping.

Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3649
Fixes: 6a694d64f4 ("wayland/seat: Keep a back pointer to the ClutterSeat")
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4003>
2024-09-04 08:58:05 +00:00
Fran Dieguez
58495ad208 Update Galician translation 2024-09-04 06:30:41 +00:00
José Expósito
cf5508bdeb onscreen/native: Return the correct number of EGL modifiers
g_array_sized_new() creates a new GArray with a preallocated size, but,
after creation, the array length is still zero [1].

Store the modifiers in a EGLuint64KHR array and use g_array_new_take()
to create a new GArray with the correct size.

Because no modifiers were returned, gbm_surface_create() was used
instead gbm_surface_create_with_modifiers() on multi-GPU setups.

[1] https://docs.gtk.org/glib/type_func.Array.sized_new.html

Fixes: aec85281ba ("native/renderer: Retrieve the right modifiers set for each GPU")
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3998>
2024-09-03 16:38:09 +00:00
Daniel
03d00902fe Updated Spanish translation 2024-09-03 11:22:35 +02:00
Sebastian Wick
b20e0370aa wayland/color-management: Handle inert feedback surfaces
When a surface is destroyed, the existing feedback surfaces are marked
as inert by setting the wl_resource user_data to NULL. This wasn't
handled in the feedback surface destructor.

Fixes: 2341346c90 ("wayland: Implement the color management protocol v4")
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4000>
2024-09-02 21:56:19 +00:00
Peter Hutterer
e4004a7c4f wayland: Use the tool's current_tablet device instead of caching it
The tablet tool is initialized with a device but if that device is later
removed we never update tool->device. This eventually causes a crash
when we're passing that device into
meta_wayland_input_invalidate_focus().

The tool keeps track of the current tablet anyway so instead of caching
this pointer in the tool, use the current tablet's device.

Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3642
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3959>
2024-09-02 21:12:56 +00:00
Jonas Ådahl
2d64965a55 window/xwayland: Handle arithmetics close to the int limits
`(int) (1.0f * (float) INT_MAX)` doesn't necessarily result in INT_MAX
due to how floating point arithmetics. Handle this better by setting
INT_MIN/MAX explicitly, when the floating point value post scaling
exceeds the corresponding limit.

This fixes resizing of electron windows.

Fixes: 6e8c7c5f84 ("Add experimental mode to use native scaling of Xwayland clients")
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3997>
2024-09-02 19:50:20 +00:00
Florian Müllner
b0e90c6523 build: Don't override prefix
Meson variables don't have a scope, so using `prefix` in a loop
for D-Bus interface prefixes actually overshadows the global
variable that holds the build prefix.

As far as I can tell, the only place where the "wrong" value is
read is the build summary, but let's not tempt fate and fix it.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3995>
2024-09-02 01:07:39 +02:00
Florian Müllner
6f9981d36a
Bump version to 47.rc
Update NEWS.
2024-09-01 13:05:59 +02:00
Sebastian Keller
898d802c5e xwayland: Fix XRROutputInfo leak when setting primary output
The call to XRRFreeOutputInfo() seems to have been accidentally dropped.

Fixes: 1333d92fa ("xwayland: Set primary monitor using connector name")
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3994>
2024-09-01 11:33:32 +02:00
Sebastian Keller
d1a1b7bfdd window-actor/x11: Fix region leak when updating frame bounds
The value returned by meta_frame_get_frame_bounds() is owned by the
caller so we can assign it directly without copying to avoid a leak and
a bit of unnecessary work. Also it can't ever return NULL, so there is
no need to check for that.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3994>
2024-09-01 11:29:12 +02:00