Bilal Elmoussaoui
6e3223a0cc
property-transition: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:22:19 +01:00
Bilal Elmoussaoui
57fbc304f5
swipe-action: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:21:14 +01:00
Bilal Elmoussaoui
1df56ca77a
text-buffer: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:21:05 +01:00
Bilal Elmoussaoui
a944889f49
tap-action: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:20:31 +01:00
Bilal Elmoussaoui
64ad3abded
rotate-action: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:20:09 +01:00
Bilal Elmoussaoui
aa8ef78b17
pan-action: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:20:07 +01:00
Bilal Elmoussaoui
d79f0ab9f3
snap-constraint: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:19:18 +01:00
Bilal Elmoussaoui
7e7e9795fe
bind-constraint: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:19:14 +01:00
Bilal Elmoussaoui
1565756fea
align-constraint: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:19:05 +01:00
Bilal Elmoussaoui
ae23caa537
binding-pool: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:18:47 +01:00
Bilal Elmoussaoui
e729e63963
settings: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:18:30 +01:00
Bilal Elmoussaoui
d6b4c3a5d1
canvas: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:18:27 +01:00
Bilal Elmoussaoui
e32268e181
constraint: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:16:52 +01:00
Bilal Elmoussaoui
f96683a89f
effect: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:16:14 +01:00
Bilal Elmoussaoui
edfd489732
transition-group: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:15:51 +01:00
Bilal Elmoussaoui
dc0a4c554a
transition: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:15:47 +01:00
Bilal Elmoussaoui
e9c1f1c642
timeline: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:11:56 +01:00
Bilal Elmoussaoui
5fb78dfbad
zoom-action: Use macros for subclassing boilerplate
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387 >
2024-01-10 09:11:52 +01:00
Robert Mader
5ffeb34251
build: Enable no-omit-frame-pointer for all non-plain builds
...
This is useful for local installations with e.g. the `release`
buildtype.
Further more, Fedora has been doing the same system wide and it
apparently was helpful in various ways, see also
Also add -mno-omit-leaf-frame-pointer, like Fedora.
https://blogs.gnome.org/chergert/2023/10/03/what-have-frame-pointers-given-us-anyway/
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3333 >
2024-01-09 16:26:57 +00:00
Robert Mader
ee65ca791b
build: Harmonize c_args handling
...
The slightly different styles in the different build files make it
harder to reason about or share c_args.
This notably ensures we never set any extra c_args for plain builds and
fixes the cc.get_supported_arguments() check in Cogl, Clutter and Mtk.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3333 >
2024-01-09 16:26:57 +00:00
Bilal Elmoussaoui
aaa63c1e08
clutter: Remove no longer useful since tags
...
As they represent the pre-merge version of Clutter
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3489 >
2024-01-09 15:23:04 +00:00
Bilal Elmoussaoui
346e9a7f2c
docs: Remove remaining SECTIONs
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3489 >
2024-01-09 15:23:04 +00:00
Bilal Elmoussaoui
00b4d4c4bc
docs: Update more links to gi-docgen
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3489 >
2024-01-09 15:23:04 +00:00
Bilal Elmoussaoui
e7a920f94d
docs: Migrate remaining content to markdown
...
By stopping using gtk-doc annotations
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3489 >
2024-01-09 15:23:04 +00:00
Bilal Elmoussaoui
fb959f3a5d
clutter: Remove no longer useful gitignore
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3500 >
2024-01-08 19:50:50 +01:00
Bilal Elmoussaoui
6b8c1c430e
cleanup: Make clutter includes consistent
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3491 >
2024-01-05 14:22:22 +01:00
Bilal Elmoussaoui
0f6df633fe
cogl/pango: Drop PANGO_ENABLE_BACKEND usage
...
Dropped before Pango 1.46 which is the min required version
so the backward compatibility is no longer needed
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3491 >
2024-01-05 14:22:22 +01:00
Bilal Elmoussaoui
9d7d25e9ee
clutter/stage: Remove no longer used struct
...
Drops a cairo usage
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3486 >
2024-01-04 14:00:26 +00:00
Daniel van Vugt
6db9a0d77e
clutter/stage: Fix indentation check-code-style is complaining about
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3487 >
2024-01-04 12:26:38 +00:00
Robert Mader
cb794329e7
clutter/stage-view: Remove superfluous return in void function
...
Fixes: 9d3e4fd402
("clutter/stage-cogl: Use buffer age when view monitor is rotated")
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3473 >
2024-01-02 13:54:38 +00:00
Joan Torres
3a94822e75
clutter/actor: Set a minimum guessed scale
...
When running headlessly it fails guessing the scale to -1.0f making
the assertion g_assert (guessed_scale >= 0.5) fail.
Setting it to 1.f in that case fixes it.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3464 >
2023-12-22 15:44:37 +00:00
Bilal Elmoussaoui
6daa21c930
clutter: Remove unnused private functions
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3458 >
2023-12-19 12:44:35 +00:00
Bilal Elmoussaoui
4d7dfb08c9
cally: Remove useless cally_actor_get_top_level_origin
...
Does nothing...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3458 >
2023-12-19 12:44:35 +00:00
Sebastian Keller
c86d8a23c3
clutter/actor: Don't write uninitialized out values on failed transform
...
clutter_actor_get_transformed_position() would write the uninitialized
values of v2 when clutter_actor_apply_transform_to_point() fails in
_clutter_actor_fully_transform_vertices() because the actor has not been
added to the stage yet.
When called from JS this would overwrite the zero initialized values
passed in from gjs. If the uninitialized values now happen to correspond
to one of the NaN float values used by mozjs to represent a pointer
type, this would lead to seemingly random crashes in mozjs code later
on.
Avoid this by using _clutter_actor_fully_transform_vertices() directly,
which allows us to check if it failed.
Related: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/469
Related: https://gitlab.gnome.org/GNOME/gjs/-/issues/591
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3453 >
2023-12-15 15:08:22 +00:00
Daniel van Vugt
85f173d0d7
clutter: Pass 'radius' to public blur APIs instead of 'sigma'
...
Although they're in the same units, `radius` is easier to understand than
`sigma` and makes the public API independent of the blur algorithm used
behind the scenes. We now only keep the `sigma` terminology where the
implementation is Gaussian-specific.
The assumption that `sigma = radius / 2.0` is actually not new here. We
just move it from `_st_create_shadow_pipeline` (gnome-shell!1905) into
`clutter_blur_new`.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1908 >
2023-12-14 18:12:55 +00:00
Bilal Elmoussaoui
90cff013a5
clutter: Remove unused enums
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3437 >
2023-12-13 11:20:04 +00:00
Bilal Elmoussaoui
580d62b9b6
clutter: Remove unused Path related types
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3437 >
2023-12-13 11:20:04 +00:00
Bilal Elmoussaoui
893e6e49b1
clutter: Drop unused private functions/defines
...
The commit also stops defining certain functions in a private header
when they are only used in the same file.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3437 >
2023-12-13 11:20:04 +00:00
Bilal Elmoussaoui
4b7a29377b
clutter: Drop remaining params nick/blurbs
...
Also the i18n macros from clutter as they are no longer used
Leftover from https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3101
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3437 >
2023-12-13 11:20:04 +00:00
Bilal Elmoussaoui
3f09a86e7a
clutter: Drop CLUTTER_PARAM_* defines
...
They are not used every where making the codebase very incosistent
So just drop the current usages
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3437 >
2023-12-13 11:20:04 +00:00
Florian Müllner
5291be8f30
clutter/actor: Allow specifying the layout manager for an actor type
...
Some actors have a well-defined layout manager other than FixedLayout.
If they do, we can handle the layout manager creation at the
ClutterActor instantiation, like GTK does for widget layout managers.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3445 >
2023-12-07 18:02:11 +00:00
Ivan Molodetskikh
e63a5369d0
clutter/frame-clock: Add output name to span descriptions
...
Lets you tell spans for multiple monitors apart in profilers.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3417 >
2023-12-06 16:12:58 +00:00
Ivan Molodetskikh
77413ed9a0
clutter/frame-clock: Store output name
...
Will be used in a subsequent commit for including the output name in
COGL_TRACE plot names.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3417 >
2023-12-06 16:12:58 +00:00
Ivan Molodetskikh
39e3415912
clutter/actor: Adjust trace actor name for better filtering
...
Tracy can filter its statistics by user text, in our case by span
description. It's useful to filter by actor type and name, and not so
much by the pointer. So, remove it, and also reduce the amount of
punctuation.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3417 >
2023-12-06 16:12:58 +00:00
Ivan Molodetskikh
b0691d581a
clutter/stage: Add trace span to paint_to_framebuffer
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3417 >
2023-12-06 16:12:58 +00:00
Ivan Molodetskikh
58ee1dfdc8
clutter/stage-view: Add trace span to before_swap
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3417 >
2023-12-06 16:12:58 +00:00
Ivan Molodetskikh
72bbb1416e
clutter/timeline: Add trace spans
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3417 >
2023-12-06 16:12:57 +00:00
Ivan Molodetskikh
ce836e37e8
clutter: Add trace spans to event handling
...
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3417 >
2023-12-06 16:12:57 +00:00
Sebastian Keller
dfe4d218f1
clutter/actor: Make get_transformed_paint_volume() transfer full
...
Transfer none was achieved using a stack GArray in the stage which
would get resized to 0 at the end of every frame to "free" it.
In the case of direct scanout however, painting the next frame only
happens after leaving fullscreen again. Until then the array just kept
growing and because GArrays don't reallocate when shrunk, this memory
remained allocated even after leaving fullscreen.
There is no cache benefit from storing paint volumes this way, because
nothing accesses them after their immediate use in the calling code.
Also the reduced overhead from avoiding malloc calls seems negligible as
according to heaptrack this only makes up about 2-3% of the temporary
allocations.
Changing this to transfer full and removing the stack array simplifies
the code and fixes the "leak".
Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3191
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3442 >
2023-12-06 14:07:39 +00:00
Jonas Ådahl
ae3a20a0a0
clutter/paint-nodes: Use g_clear_object() in a few places
...
It's possible now that they are GObject's.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3443 >
2023-12-06 13:45:03 +00:00