7ba1448e5b
All pointer a11y is a fabrication of Clutter backend-independent code, with the help of a ClutterVirtualInputDevice and with some UI on top. On the other hand, MetaInputSettings is a backend implementation detail, this has 2 gotchas: - In the native backend, the MetaInputSettings (and pointer a11y with it) are initialized early, before the ClutterSeat core pointer is set up. - Doing this from the MetaInputSettings also means another dubious access from the input thread into main thread territory. Move the pointer a11y into ClutterSettings, making this effectively backend-independent business, invariably done from the main thread and ensured to happen after seat initialization. Fixes: https://gitlab.gnome.org/GNOME/mutter/-/issues/1765 Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1849>
90 lines
1.7 KiB
Meson
90 lines
1.7 KiB
Meson
clutter_includesubdir = join_paths(pkgname, 'clutter')
|
|
clutter_includedir = join_paths(includedir, clutter_includesubdir)
|
|
|
|
clutter_includepath = include_directories('.', 'clutter')
|
|
clutter_includes = [clutter_includepath, cogl_includepath]
|
|
|
|
clutter_c_args = [
|
|
'-DCLUTTER_SYSCONFDIR="@0@"'.format(join_paths(prefix, sysconfdir)),
|
|
'-DCLUTTER_COMPILATION=1',
|
|
'-DCOGL_DISABLE_DEPRECATION_WARNINGS',
|
|
'-DCOGL_ENABLE_MUTTER_API',
|
|
'-DG_LOG_DOMAIN="Clutter"',
|
|
]
|
|
|
|
clutter_debug_c_args = []
|
|
if get_option('debug')
|
|
clutter_debug_c_args += [
|
|
'-DCLUTTER_ENABLE_DEBUG',
|
|
'-fno-omit-frame-pointer'
|
|
]
|
|
elif buildtype != 'plain'
|
|
clutter_debug_c_args += [
|
|
'-DG_DISABLE_ASSERT',
|
|
'-DG_DISABLE_CHECKS',
|
|
'-DG_DISABLE_CAST_CHECKS',
|
|
]
|
|
endif
|
|
supported_clutter_debug_c_args = cc.get_supported_arguments(clutter_debug_c_args)
|
|
clutter_c_args += clutter_debug_c_args
|
|
|
|
clutter_pkg_deps = [
|
|
atk_dep,
|
|
cairo_gobject_dep,
|
|
glib_dep,
|
|
gobject_dep,
|
|
gio_dep,
|
|
json_glib_dep,
|
|
pango_dep,
|
|
]
|
|
|
|
clutter_pkg_private_deps = [
|
|
fribidi_dep,
|
|
gdk_pixbuf_dep,
|
|
gthread_dep,
|
|
gmodule_no_export_dep,
|
|
pangocairo_dep,
|
|
]
|
|
|
|
if have_pango_ft2
|
|
clutter_pkg_private_deps += [
|
|
pangoft2_dep,
|
|
]
|
|
endif
|
|
|
|
if have_wayland
|
|
clutter_pkg_private_deps += [
|
|
wayland_egl_dep,
|
|
wayland_server_dep,
|
|
]
|
|
endif
|
|
|
|
if have_x11
|
|
clutter_pkg_deps += [
|
|
x11_dep,
|
|
]
|
|
clutter_pkg_private_deps += [
|
|
xext_dep,
|
|
xdamage_dep,
|
|
xcomposite_dep,
|
|
xtst_dep,
|
|
xi_dep,
|
|
]
|
|
endif
|
|
|
|
if have_libwacom
|
|
clutter_pkg_private_deps += [
|
|
libwacom_dep,
|
|
]
|
|
endif
|
|
|
|
clutter_deps = [
|
|
clutter_pkg_deps,
|
|
clutter_pkg_private_deps,
|
|
gsettings_desktop_schemas_dep,
|
|
libmutter_cogl_dep,
|
|
m_dep
|
|
]
|
|
|
|
subdir('clutter')
|
|
|