mutter/src/backends/native
Jonas Ådahl ad5555bf42 clutter: Add API to get the resource scale of an actor
A clutter actor might be painted on a stage view with a view scale
other than 1. In this case, to show the content in full resolution, the
actor must use a higher resolution resource (e.g. texture), which will
be down scaled to the stage coordinate space, then scaled up again to
the stage view framebuffer scale.

Use a 'resource-scale' property to save information and notify when it
changes.

The resource scale is the ceiled value of the highest stage view scale a
actor is visible on. The value is ceiled because using a higher
resolution resource consistently results in better output quality. One
reason for this is that rendering is often not perfectly pixel aligned,
meaning even if we load a resource with a suitable size, due to us still
scaling ever so slightly, the quality is affected. Using a higher
resolution resource avoids this problem.

For situations inside clutter where the actual maximum view scale is
needed, a function _clutter_actor_get_real_resource_scale() is provided,
which returns the non-ceiled value.

Make sure we ignore resource scale computation requests during size
requests or allocation while ensure we've proper resource-scale on
pre-paint.

https://bugzilla.gnome.org/show_bug.cgi?id=765011
https://gitlab.gnome.org/GNOME/mutter/merge_requests/3
2019-03-01 17:46:49 +00:00
..
dbus-utils.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
dbus-utils.h launcher: Replace mutter-launch with logind integration 2014-05-19 15:09:23 -04:00
gen-default-modes.py build: Don't hardcode the path of python3 2018-11-18 14:25:35 +08:00
meta-backend-native-private.h backends/native: Implement support for pointer barriers 2015-01-19 02:27:59 -08:00
meta-backend-native.c Add some gtk-doc comments. 2019-01-06 21:57:16 +01:00
meta-backend-native.h backends/native: Move KMS fd management to monitor manager 2017-10-05 16:18:43 -04:00
meta-barrier-native.c Use a consistent style for enum braces 2019-02-28 09:31:01 +01:00
meta-barrier-native.h Use G_DECLARE_DERIVABLE/FINAL_TYPE on some types 2018-12-21 19:48:50 +00:00
meta-clutter-backend-native.c Add some gtk-doc comments. 2019-01-06 21:57:16 +01:00
meta-clutter-backend-native.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-crtc-kms.c renderer/native: Debug print chosen secondary FB format 2019-01-30 12:53:20 +00:00
meta-crtc-kms.h renderer/native: Debug print chosen secondary FB format 2019-01-30 12:53:20 +00:00
meta-cursor-renderer-native.c cursor-renderer/native: Clear active CRTC gbm_bo when destroyed 2019-02-25 15:35:38 +00:00
meta-cursor-renderer-native.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-gpu-kms.c renderer/native: Retry page flip after one vsync if EBUSY 2019-02-25 15:48:29 +00:00
meta-gpu-kms.h renderer/native: Retry page flip after one vsync if EBUSY 2019-02-25 15:48:29 +00:00
meta-input-settings-native.c Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-input-settings-native.h Clean up include macros mess 2018-11-06 17:17:36 +01:00
meta-launcher.c meta-launcher: g_propagate_*_error takes ownership 2019-02-12 09:41:04 +01:00
meta-launcher.h backends/native: Move KMS fd management to monitor manager 2017-10-05 16:18:43 -04:00
meta-monitor-manager-kms.c backends/native: Move primary_gpu into MetaRendererNative 2019-01-13 10:30:44 +00:00
meta-monitor-manager-kms.h backends/native: Move primary_gpu into MetaRendererNative 2019-01-13 10:30:44 +00:00
meta-output-kms.c output/kms: Make winsys_id unique 2018-11-19 14:58:48 +00:00
meta-output-kms.h backends/native: Use the connector_id rather than winsys_id 2018-11-19 14:58:48 +00:00
meta-renderer-native-gles3.c renderer/native: remove meta_renderer_native_gles3_read_pixels 2018-11-19 22:53:13 +00:00
meta-renderer-native-gles3.h renderer/native: remove meta_renderer_native_gles3_read_pixels 2018-11-19 22:53:13 +00:00
meta-renderer-native.c renderer/native: Retry page flip after one vsync if EBUSY 2019-02-25 15:48:29 +00:00
meta-renderer-native.h backends: Split out CRTC/output management to MetaGpu 2017-10-05 18:05:20 -04:00
meta-stage-native.c clutter: Add API to get the resource scale of an actor 2019-03-01 17:46:49 +00:00
meta-stage-native.h backends/native: Stop supporting stage views being disabled 2017-10-05 18:08:09 -04:00