Robert Mader
a09c914230
wayland/actor-surface: Call ensure_size_valid() on shaped-texture
...
Use the new API to make sure the shaped texture has a valid size
during the next layout phase.
This is needed here because, quoting the previous commit:
When the texture size is invalidated using `invalidate_size()`, the new
size will only get calculated the next time `update_size()` is
called. This happens e.g. in `meta_shaped_texture_get_preferred_size()`
via `ensure_size_valid()`.
`update_size()` can chain up to `clutter_content_invalidate_size()`
as well as emitting a `size-changed` signal. If this happens during
layout, the result is a 'change the layout conditions during layout'
issue, causing heavy breakage in e.g. the Shell overview.
To fix this, expose `ensure_size_valid()` as API so callers can make
sure the texture has a valid size without creating redundant size
invalidations calls.
Note that if a buffer with a new size is attached we already trigger
`update_size()` explicitely, avoiding such situations.
Closes https://gitlab.gnome.org/GNOME/mutter/-/issues/1718
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1799 >
2021-03-29 15:47:25 +00:00
..
2021-01-29 16:21:16 +00:00
2018-06-15 19:09:53 +00:00
2018-06-15 19:09:53 +00:00
2020-11-27 15:14:33 +00:00
2020-11-27 15:14:33 +00:00
2020-11-27 15:14:33 +00:00
2020-11-27 15:14:33 +00:00
2020-04-17 00:46:23 +02:00
2019-10-11 23:04:01 +02:00
2021-03-29 15:47:25 +00:00
2020-05-26 16:46:57 +02:00
2021-02-09 08:27:11 +00:00
2020-08-07 09:02:49 +00:00
2020-10-02 15:37:52 +00:00
2021-03-08 09:48:12 +00:00
2018-11-06 17:17:36 +01:00
2021-03-23 17:07:31 +00:00
2020-05-13 18:18:14 +02:00
2021-03-23 17:07:31 +00:00
2020-05-13 18:27:46 +02:00
2021-03-23 17:07:31 +00:00
2020-05-13 14:44:55 +00:00
2021-02-22 13:52:27 +01:00
2020-05-13 18:18:14 +02:00
2021-02-22 13:52:27 +01:00
2020-05-13 18:27:46 +02:00
2021-02-22 13:52:27 +01:00
2020-04-17 00:46:23 +02:00
2020-05-13 18:18:14 +02:00
2020-05-13 18:18:14 +02:00
2020-05-13 18:27:46 +02:00
2020-05-13 18:27:46 +02:00
2020-04-17 00:46:21 +02:00
2020-04-17 00:46:21 +02:00
2021-03-23 16:40:40 +00:00
2020-04-16 15:05:52 +02:00
2021-02-05 09:51:56 +00:00
2019-01-22 18:32:28 +01:00
2020-01-10 16:01:21 +00:00
2020-01-10 16:01:21 +00:00
2021-01-29 16:21:16 +00:00
2018-11-27 15:34:13 +01:00
2019-11-21 15:02:27 +00:00
2018-11-06 17:17:36 +01:00
2019-11-21 15:02:27 +00:00
2018-11-06 17:17:36 +01:00
2016-10-11 22:51:50 +08:00
2016-10-11 22:51:50 +08:00
2020-12-08 15:37:38 +00:00
2020-04-21 17:52:08 +02:00
2020-12-03 21:39:13 +00:00
2018-11-06 17:17:36 +01:00
2020-10-08 16:38:41 +02:00
2020-02-11 18:56:13 +00:00
2021-01-12 12:32:24 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2021-02-22 13:52:27 +01:00
2020-12-23 12:54:49 +01:00
2021-02-22 13:52:27 +01:00
2018-11-06 17:17:36 +01:00
2021-03-08 09:48:12 +00:00
2021-03-08 09:48:12 +00:00
2021-03-08 09:48:12 +00:00
2021-02-22 13:52:27 +01:00
2018-11-06 17:17:36 +01:00
2020-12-23 12:54:49 +01:00
2020-12-23 12:54:49 +01:00
2020-12-23 12:54:49 +01:00
2019-12-09 10:09:40 +01:00
2021-03-14 00:38:18 +01:00
2021-03-14 00:38:18 +01:00
2021-03-15 12:49:45 +00:00
2021-03-14 00:38:18 +01:00
2018-11-06 17:17:36 +01:00
2018-11-06 17:17:36 +01:00
2021-02-22 13:52:27 +01:00
2020-11-27 15:14:33 +00:00
2021-02-22 13:52:27 +01:00
2018-11-06 17:17:36 +01:00
2021-02-22 13:52:27 +01:00
2018-11-06 17:17:36 +01:00
2021-02-22 13:52:27 +01:00
2018-11-06 17:17:36 +01:00
2021-02-22 13:52:27 +01:00
2018-11-06 17:17:36 +01:00
2021-02-22 13:52:27 +01:00
2020-01-30 18:02:34 +01:00
2021-02-22 13:52:27 +01:00
2020-11-27 15:14:33 +00:00
2021-02-22 13:52:27 +01:00
2018-11-06 17:17:36 +01:00
2020-08-31 08:40:12 +00:00
2018-11-06 17:17:36 +01:00
2020-08-31 08:40:12 +00:00
2018-11-06 17:17:36 +01:00
2020-12-08 15:37:38 +00:00
2020-10-23 18:48:18 +00:00
2020-05-13 18:27:46 +02:00
2021-03-08 09:48:11 +00:00
2019-12-09 10:09:40 +01:00
2019-02-06 12:24:03 +00:00
2021-03-12 16:25:10 +00:00
2021-01-30 09:49:13 +00:00
2020-10-29 10:24:25 +01:00
2018-02-23 18:57:40 +08:00
2020-02-19 22:34:28 +00:00
2016-08-22 21:03:41 +08:00
2020-12-03 21:39:13 +00:00
2018-02-23 18:57:53 +08:00
2021-03-08 09:48:12 +00:00
2021-03-08 09:48:12 +00:00
2021-03-12 16:25:10 +00:00
2021-03-12 16:25:10 +00:00
2020-10-21 18:57:12 +02:00
2017-12-18 13:15:09 +01:00
2019-05-02 16:31:45 +02:00
2021-02-22 13:52:27 +01:00
2020-11-06 15:57:23 +01:00
2018-11-06 17:17:36 +01:00
2020-12-11 13:44:45 +00:00
2020-12-23 12:54:49 +01:00
2020-02-19 22:34:28 +00:00
2021-03-18 17:43:02 +01:00
2019-01-23 14:18:13 +01:00