mutter/src/backends
Jonas Ådahl e52641c4b6 cursor-renderer/native: Replace HW cursor with KMS cursor manager
This removes the old hardware cursor management code and outsources it
to MetaKmsCursorManager. What the native cursor renderer still does,
however, is the preprocessing i.e. rotating/scaling cursor that wouldn't
otherwise be fit for a cursor plane.

The cursor DRM buffers are instead of being per cursor sprite now per
CRTC, meaning we don't need to stop doing hardware cursors if part of
the cursor is on an output that doesn't support it. This is why the
whole scale/transform code changed from being per GPU to per CRTC.

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2777>
2023-07-18 23:51:34 +02:00
..
native cursor-renderer/native: Replace HW cursor with KMS cursor manager 2023-07-18 23:51:34 +02:00
x11 cursor-renderer: Make 'handled_by_backend' state 'needs_overlay' 2023-07-17 23:42:38 +02:00
edid-parse.c edid: Integrate libdisplay-info for edid parsing 2023-05-02 17:37:01 +00:00
edid.h edid: Integrate libdisplay-info for edid parsing 2023-05-02 17:37:01 +00:00
gsm-inhibitor-flag.h
meta-backend-private.h backends/eis: Add EIS client support 2023-07-14 22:23:45 +00:00
meta-backend-types.h backends/eis: Add EIS client support 2023-07-14 22:23:45 +00:00
meta-backend.c backends/eis: Add EIS client support 2023-07-14 22:23:45 +00:00
meta-barrier-private.h barrier: Add ways to make barriers sticky 2023-07-14 22:23:45 +00:00
meta-barrier.c barrier: Add ways to make barriers sticky 2023-07-14 22:23:45 +00:00
meta-color-device.c color-device: Don't close lcms profile on error from cd_icc_load_handle 2023-03-03 12:07:02 +00:00
meta-color-device.h color-device: Add API to set test efivar path 2022-09-01 21:09:28 +00:00
meta-color-manager-private.h tests: Add duplicate color profile test case 2022-09-15 11:22:54 +00:00
meta-color-manager.c color-manager: Apply temperature after gsd.Color proxy has been created 2023-06-28 07:51:01 +00:00
meta-color-manager.h x11: Add X11 color manager subclass 2022-09-01 19:09:21 +02:00
meta-color-profile.c color: Handle profiles not initializing succesfully 2022-09-15 11:22:54 +00:00
meta-color-profile.h color-device: Pass calibration state separately when creating profile 2022-09-01 21:09:28 +00:00
meta-color-store.c color-store: Forward cancelled error if connect failed 2023-01-30 13:17:19 +00:00
meta-color-store.h tests: Add duplicate color profile test case 2022-09-15 11:22:54 +00:00
meta-crtc-mode.c crtc-kms: Make KMS CRTC mode a type inheriting MetaCrtcMode 2020-06-11 09:20:16 +00:00
meta-crtc-mode.h output/kms: Replace common mode bandwidth check with clock check 2022-07-01 16:13:18 +02:00
meta-crtc.c backends: Use meta_gamma_lut_new_sized() in a few more places 2023-03-30 11:21:02 +00:00
meta-crtc.h kms/update: Add API to merge two updates 2023-03-01 23:57:32 +00:00
meta-cursor-renderer.c cursor-renderer/native: Replace HW cursor with KMS cursor manager 2023-07-18 23:51:34 +02:00
meta-cursor-renderer.h wayland/cursor-surface: Update cursor on dispose 2023-04-17 19:53:35 +00:00
meta-cursor-sprite-xcursor.c cursor-sprite: Register all cursor sprites with the cursor tracker 2021-12-22 16:22:08 +00:00
meta-cursor-sprite-xcursor.h cursor-sprite: Register all cursor sprites with the cursor tracker 2021-12-22 16:22:08 +00:00
meta-cursor-tracker-private.h cursor-sprite: Register all cursor sprites with the cursor tracker 2021-12-22 16:22:08 +00:00
meta-cursor-tracker.c mutter: Remove stray spaces 2023-05-24 14:16:41 +02:00
meta-cursor.c cursor: Hold reference to cursor tracker 2021-12-22 19:37:16 +01:00
meta-cursor.h backends: Replace MetaCursorSprite::prepare-at with in-place function 2021-12-07 20:04:08 +00:00
meta-dbus-session-manager.c dbus-session: Make some properties part of the interface 2023-02-23 17:52:08 +00:00
meta-dbus-session-manager.h backends: Add generic D-Bus session manager helper class 2023-02-23 17:52:08 +00:00
meta-dbus-session-watcher.c dbus-session: Make some properties part of the interface 2023-02-23 17:52:08 +00:00
meta-dbus-session-watcher.h dbus-session: Make some properties part of the interface 2023-02-23 17:52:08 +00:00
meta-display-config-shared.h
meta-dnd-private.h compositor/dnd: Guard X11 types 2023-05-15 20:36:23 +02:00
meta-egl-ext.h
meta-egl.c egl: Set EGL_IMAGE_PRESERVED_KHR on DMABUF import 2023-05-07 23:16:37 +02:00
meta-egl.h egl: Add eglQueryDisplayAttribEXT() helper 2022-01-05 16:36:48 +00:00
meta-eis-client.c backends/eis: Add EIS client support 2023-07-14 22:23:45 +00:00
meta-eis-client.h backends/eis: Add EIS client support 2023-07-14 22:23:45 +00:00
meta-eis.c backends/eis: Add a new API to get the fd from MetaEIS 2023-07-14 22:23:45 +00:00
meta-eis.h backends/eis: Add a new API to get the fd from MetaEIS 2023-07-14 22:23:45 +00:00
meta-fd-source.c seat/impl: Move out the GSource implementation to a helper object 2023-07-14 22:23:45 +00:00
meta-fd-source.h seat/impl: Move out the GSource implementation to a helper object 2023-07-14 22:23:45 +00:00
meta-gles3-table.h
meta-gles3.c gles3: Ensure missing_extensions is always populated 2023-01-18 10:14:39 +00:00
meta-gles3.h
meta-gpu.c output: Move output info to MetaOutputInfo struct 2020-06-10 18:54:50 +00:00
meta-gpu.h
meta-idle-manager.c backend: Set up and use ownership chains 2022-12-17 13:52:51 +00:00
meta-idle-manager.h backends: Introduce MetaIdleManager 2021-05-18 13:19:36 +00:00
meta-idle-monitor-private.h backends: Introduce MetaIdleManager 2021-05-18 13:19:36 +00:00
meta-idle-monitor.c mutter: Remove stray spaces 2023-05-24 14:16:41 +02:00
meta-input-capture-private.h input-capture: Hook up capturing of events to active session 2023-07-14 22:23:45 +00:00
meta-input-capture-session.c input-capture: Hook up capturing of events to active session 2023-07-14 22:23:45 +00:00
meta-input-capture-session.h input-capture: Hook up capturing of events to active session 2023-07-14 22:23:45 +00:00
meta-input-capture.c input-capture: Hook up capturing of events to active session 2023-07-14 22:23:45 +00:00
meta-input-capture.h input-capture: Hook up capturing of events to active session 2023-07-14 22:23:45 +00:00
meta-input-device-private.h backend: Set up and use ownership chains 2022-12-17 13:52:51 +00:00
meta-input-device.c backend: Set up and use ownership chains 2022-12-17 13:52:51 +00:00
meta-input-mapper-private.h backend: Set up and use ownership chains 2022-12-17 13:52:51 +00:00
meta-input-mapper.c backend: Set up and use ownership chains 2022-12-17 13:52:51 +00:00
meta-input-settings-dummy.c Support selecting an acceleration profile for touchpad devices 2023-02-01 03:03:47 +00:00
meta-input-settings-dummy.h backends/x11: Add dummy input-settings implementation 2021-03-10 13:56:54 +00:00
meta-input-settings-private.h Support selecting an acceleration profile for touchpad devices 2023-02-01 03:03:47 +00:00
meta-input-settings.c mutter: Remove stray spaces 2023-05-24 14:16:41 +02:00
meta-keymap-utils.c *: Fix spelling mistakes found by codespell 2020-08-29 09:10:31 +00:00
meta-keymap-utils.h compositor: use XDG_CONFIG_HOME as initial lookup path for xkb 2020-06-08 11:29:30 +00:00
meta-logical-monitor.c mutter: Remove stray spaces 2023-05-24 14:16:41 +02:00
meta-logical-monitor.h *: Fix spelling mistakes found by codespell 2020-08-29 09:10:31 +00:00
meta-monitor-config-manager.c monitor-config-manager: Add a max_bpc field to MetaMonitorConfig 2022-08-19 17:07:12 +00:00
meta-monitor-config-manager.h monitor-config-manager: Add a max_bpc field to MetaMonitorConfig 2022-08-19 17:07:12 +00:00
meta-monitor-config-migration.c monitor-manager: Pass the Logical mode when computing the monitor scale 2021-07-22 13:14:01 +02:00
meta-monitor-config-migration.h
meta-monitor-config-store.c monitor-config-store: Format <rate> using the C locale (. decimal point) 2022-09-02 08:43:00 +00:00
meta-monitor-config-store.h monitor-config-store: Allow changing D-Bus configuration policy 2022-01-25 16:25:48 +00:00
meta-monitor-manager-dummy.c Replace using sscanf() to parse mode strings with new helper 2023-04-18 18:38:03 +00:00
meta-monitor-manager-dummy.h crtc: Make implementations inherit MetaCrtc 2020-06-10 18:54:51 +00:00
meta-monitor-manager-private.h core/window: Track monitor with the highest scale value 2023-05-22 14:44:33 +00:00
meta-monitor-manager.c mutter: Remove stray spaces 2023-05-24 14:16:41 +02:00
meta-monitor-transform.c monitor-transform: Add helper to transform matrices 2022-08-05 20:30:50 +02:00
meta-monitor-transform.h monitor-transform: Add helper to transform matrices 2022-08-05 20:30:50 +02:00
meta-monitor.c monitor: Ensure the preferred mode is always included 2023-06-12 15:26:47 +00:00
meta-monitor.h monitor: Add helper to parse simple mode strings 2023-04-18 18:38:03 +00:00
meta-orientation-manager.c backends: Avoid orientation changes around suspend/resume if locked 2023-05-27 19:19:09 +00:00
meta-orientation-manager.h tests: Add MetaOrientationManager tests via SensorsProxy mock 2021-09-04 10:04:00 +02:00
meta-output.c edid: Integrate libdisplay-info for edid parsing 2023-05-02 17:37:01 +00:00
meta-output.h output: Check the EDID for the supported sink Colorimetry 2023-04-21 00:00:24 +02:00
meta-pointer-constraint.c mutter: Remove stray spaces 2023-05-24 14:16:41 +02:00
meta-pointer-constraint.h pointer-constraints: Move min edge distance from backend to Wayland 2022-06-13 18:38:50 +00:00
meta-remote-access-controller-private.h Port screen cast and remote desktop to MetaDbusSessionManager 2023-02-23 17:52:08 +00:00
meta-remote-access-controller.c Port screen cast and remote desktop to MetaDbusSessionManager 2023-02-23 17:52:08 +00:00
meta-remote-desktop-session.c remote-desktop/eis: Add support for ConnectToEIS. 2023-07-14 22:23:45 +00:00
meta-remote-desktop-session.h Port screen cast and remote desktop to MetaDbusSessionManager 2023-02-23 17:52:08 +00:00
meta-remote-desktop.c Port screen cast and remote desktop to MetaDbusSessionManager 2023-02-23 17:52:08 +00:00
meta-remote-desktop.h Port screen cast and remote desktop to MetaDbusSessionManager 2023-02-23 17:52:08 +00:00
meta-renderer-view.c mutter: Remove stray spaces 2023-05-24 14:16:41 +02:00
meta-renderer-view.h backends/native: Introduce MetaRendererViewNative 2023-03-02 01:39:16 +01:00
meta-renderer.c mutter: Remove stray spaces 2023-05-24 14:16:41 +02:00
meta-renderer.h onscreen/native: Track GAMMA_LUT invalidations here 2023-02-01 08:40:53 +01:00
meta-screen-cast-area-stream-src.c backends/stage: Pass ClutterFrame to MetaStageWatchFunc 2023-04-07 12:19:23 +02:00
meta-screen-cast-area-stream-src.h screen-cast: Add RecordArea for screen cast arbitrary area 2020-04-23 14:45:53 +00:00
meta-screen-cast-area-stream.c remote-desktop/session: Handle unable to transform coordinate gracefully 2021-03-12 15:09:45 +00:00
meta-screen-cast-area-stream.h screen-cast: Add screen cast flag to streams 2020-07-30 09:51:16 +02:00
meta-screen-cast-monitor-stream-src.c screen-cast/src: Never dequeue pw_buffer's we refuse to record to 2023-05-04 13:00:07 +00:00
meta-screen-cast-monitor-stream-src.h
meta-screen-cast-monitor-stream.c backend: Get 'is-stage-views-scaled' from backend 2022-12-17 13:52:51 +00:00
meta-screen-cast-monitor-stream.h screen-cast: Add screen cast flag to streams 2020-07-30 09:51:16 +02:00
meta-screen-cast-session.c screencast: Do not stop remote desktop session when a stream closes 2023-06-20 20:13:47 +00:00
meta-screen-cast-session.h Port screen cast and remote desktop to MetaDbusSessionManager 2023-02-23 17:52:08 +00:00
meta-screen-cast-stream-src.c screen-cast/src: Queue follow up frame if no buffers 2023-06-28 01:03:35 +00:00
meta-screen-cast-stream-src.h screen-cast/src: Never dequeue pw_buffer's we refuse to record to 2023-05-04 13:00:07 +00:00
meta-screen-cast-stream.c ScreenCast: Allow recording new streams on active sessions 2021-12-07 19:23:52 +00:00
meta-screen-cast-stream.h remote-desktop/session: Handle unable to transform coordinate gracefully 2021-03-12 15:09:45 +00:00
meta-screen-cast-virtual-stream-src.c backends/stage: Pass ClutterFrame to MetaStageWatchFunc 2023-04-07 12:19:23 +02:00
meta-screen-cast-virtual-stream-src.h screen-cast/session: Introduce RecordVirtual D-Bus API 2021-03-12 15:09:45 +00:00
meta-screen-cast-virtual-stream.c remote-desktop/virtual: Drop absolute events if not active 2022-03-04 18:13:45 +00:00
meta-screen-cast-virtual-stream.h screen-cast/session: Introduce RecordVirtual D-Bus API 2021-03-12 15:09:45 +00:00
meta-screen-cast-window-stream-src.c screen-cast-stream-src: Export damaged video regions 2023-04-06 23:09:43 +00:00
meta-screen-cast-window-stream-src.h
meta-screen-cast-window-stream.c screen-cast/window: Add API to check if stream-cast is active 2023-02-28 12:01:17 +01:00
meta-screen-cast-window-stream.h screen-cast: Add screen cast flag to streams 2020-07-30 09:51:16 +02:00
meta-screen-cast-window.c screen-cast/window: Add API to check if stream-cast is active 2023-02-28 12:01:17 +01:00
meta-screen-cast-window.h screen-cast/window: Add API to check if stream-cast is active 2023-02-28 12:01:17 +01:00
meta-screen-cast.c Port screen cast and remote desktop to MetaDbusSessionManager 2023-02-23 17:52:08 +00:00
meta-screen-cast.h Port screen cast and remote desktop to MetaDbusSessionManager 2023-02-23 17:52:08 +00:00
meta-settings-private.h settings: Add Xwayland byte-swapped clients 2023-01-17 11:14:19 +01:00
meta-settings.c settings: Fix spelling of endianness 2023-01-29 17:37:43 +01:00
meta-stage-impl-private.h stage-impl: Change the backend pointer to MetaBackend 2022-01-17 09:48:51 +01:00
meta-stage-impl.c stage-impl: Do clipped redraws when drawing offscreen 2023-04-06 23:09:43 +00:00
meta-stage-private.h backends/stage: Pass ClutterFrame to MetaStageWatchFunc 2023-04-07 12:19:23 +02:00
meta-stage-view-private.h stage-view: Add API to inhibit cursor overlay painting 2023-07-17 23:42:38 +02:00
meta-stage-view.c stage-view: Add API to inhibit cursor overlay painting 2023-07-17 23:42:38 +02:00
meta-stage-view.h stage-view: Add API to inhibit cursor overlay painting 2023-07-17 23:42:38 +02:00
meta-stage.c stage-view: Add API to inhibit cursor overlay painting 2023-07-17 23:42:38 +02:00
meta-viewport-info.c main: Move rect related macro to util-private.h 2021-05-17 16:08:42 +00:00
meta-viewport-info.h backends: Store whether views are scaled in MetaViewportInfo 2021-04-13 10:32:14 +00:00
meta-virtual-monitor.c virtual-monitor: Add way to change virtual monitor mode 2022-03-04 18:13:45 +00:00
meta-virtual-monitor.h tests/runner: Add 'resize_monitor' metatest command 2022-08-11 11:32:42 +00:00