### Namespace

# Meta – 14

The Mutter display server, window manager and compositor library

Version | 14
Authors | Mutter Development Team
License | GPL-2.0-or-later
Website | https://blogs.gnome.org/shell-dev/
Source | https://gitlab.gnome.org/GNOME/mutter/

#### Build

pkg-config files | `libmutter-14`

#### Dependencies

GObject—2.0 | The base type system library
| Browse documentation

#### Related libraries

Gdk | The GTK windowing system abstraction
| Browse documentation
Gtk | The GTK toolkit
| Browse documentation

#### Additional documentation

- Classes Hierarchy

#### Classes

Backend | Handles monitor config, modesetting, cursor sprites, …
Background | This class handles tracking and painting the root window background.
BackgroundActor | This class handles tracking and painting the root window background.
BackgroundContent | This class handles tracking and painting the root window background.
BackgroundGroup | Container for background actors.
BackgroundImage | Represents a loaded or loading background image.
BackgroundImageCache | Caches loading of textures for backgrounds.
Barrier | Pointer barriers.
Compositor | Compositor API.
Context |
CursorTracker | Mutter cursor tracking helper. Originally only tracking the cursor image, now more of a “core pointer abstraction”.
Display | Mutter display representation.
Dnd |
IdleMonitor | Mutter idle counter (similar to X’s IDLETIME).
Laters |
LaunchContext |
MonitorManager | A manager for multiple monitors.
MultiTexture | A texture that can have multiple planes.
Plugin | Entry point for plugins.
RemoteAccessController |
RemoteAccessHandle |
Selection |
SelectionSource |
SelectionSourceMemory |
ShadowFactory | Create window shadows.
ShapedTexture | A ClutterContent which draws a shaped texture.
SoundPlayer |
Stage |
StartupNotification |
StartupSequence |
WaylandClient | A class that allows to launch a trusted client and detect if an specific Wayland window belongs to it.
WaylandCompositor |
WaylandSurface |
Window | A display-agnostic abstraction for a window.
WindowActor | An actor representing a top-level window in the scene graph.
WindowGroup |
Workspace | Workspaces.
WorkspaceManager |
X11Display | Mutter X display handler.

#### Interfaces

CloseDialog |
InhibitShortcutsDialog |

#### Structs

BarrierEvent |
ButtonLayout |
Edge |
Frame |
FrameBorder |
FrameBorders |
Group | Mutter window groups.
KeyBinding |
PluginInfo |
Settings |
Shadow | Holds a shadow texture along with information about how to apply that texture to draw a window texture.
ShadowParams | Information about how to draw a particular style of shadow.
Strut |
WindowShape | Represents a 9-sliced region with borders on all sides that are unscaled, and a constant central region that is scaled.

#### Enumerations

ButtonFunction | Function a window button can have.
CloseDialogResponse |
CompEffect | Indicates the appropriate effect to show the user for `meta_compositor_show_window()` and meta_compositor_hide_window().
CompositorType |
Cursor |
DisplayCorner |
DisplayDirection |
EdgeType |
ExitCode |
FrameType |
GrabOp |
Gravity |
InhibitShortcutsDialogResponse |
KeyBindingAction |
LaterType |
LocaleDirection |
MonitorSwitchConfigType |
MotionDirection |
MultiTextureFormat | A representation for complex pixel formats.
PadDirection |
PadFeatureType |
PowerSaveChangeReason |
Preference |
SelectionType |
ShadowMode |
Side |
SizeChange |
StackLayer | Layers a window can be in. These MUST be in the order of stacking.
TabList |
TabShowType |
WindowClientType |
WindowMenuType | Menu the compositor should display for a given window.
WindowType |

#### Bitfields

BackendCapabilities |
BarrierDirection |
BarrierFlags |
DebugPaintFlag |
DebugTopic |
Direction |
KeyBindingFlags |
KeyboardA11yFlags | Keyboard accessibility features.
MaximizeFlags |

#### Callbacks

IdleMonitorWatchFunc |
KeyHandlerFunc |
PrefsChangedFunc |
WindowForeachFunc |
X11DisplayEventFunc |

#### Functions

accelerator_name | Convert an accelerator keyval and modifier mask into a string parsable by `meta_parse_accelerator`.
add_clutter_debug_flags |
add_debug_paint_flag |
add_verbose_topic | Ensure log messages for the given topic `topic` will be printed.
bug |
create_context | Create a context.
disable_unredirect_for_display | Disables unredirection, can be useful in situations where having unredirected windows is undesirable like when recording a video.
enable_unredirect_for_display | Enables unredirection which reduces the overhead for apps like games.
exit |
external_binding_name_for_action |
fatal |
g_utf8_strndup |
get_clutter_debug_flags |
get_debug_paint_flags |
get_locale_direction |
get_stage_for_display |
get_top_window_group_for_display |
get_window_actors |
get_window_group_for_display |
is_restart | Returns `TRUE` if this instance of Mutter comes from Mutter restarting itself (for example to enable/disable stereo.).
is_topic_enabled |
is_verbose |
is_wayland_compositor |
keybindings_set_custom_handler | Allows users to register a custom handler for a builtin key binding.
log |
pop_no_msg_prefix |
prefs_add_listener |
prefs_bell_is_audible |
prefs_change_workspace_name |
prefs_get_action_double_click_titlebar |
prefs_get_action_middle_click_titlebar |
prefs_get_action_right_click_titlebar |
prefs_get_attach_modal_dialogs |
prefs_get_auto_maximize |
prefs_get_auto_raise |
prefs_get_auto_raise_delay |
prefs_get_button_layout |
prefs_get_center_new_windows |
prefs_get_check_alive_timeout |
prefs_get_compositing_manager |
prefs_get_cursor_size |
prefs_get_cursor_theme |
prefs_get_disable_workarounds |
prefs_get_drag_threshold |
prefs_get_draggable_border_width |
prefs_get_dynamic_workspaces |
prefs_get_edge_tiling |
prefs_get_focus_change_on_pointer_rest |
prefs_get_focus_mode |
prefs_get_focus_new_windows |
prefs_get_force_fullscreen |
prefs_get_gnome_accessibility |
prefs_get_gnome_animations |
prefs_get_keybinding_action |
prefs_get_keybinding_label |
prefs_get_mouse_button_menu |
prefs_get_mouse_button_mods |
prefs_get_mouse_button_resize |
prefs_get_num_workspaces |
prefs_get_raise_on_click |
prefs_get_show_fallback_app_menu |
prefs_get_visual_bell |
prefs_get_visual_bell_type |
prefs_get_workspace_name |
prefs_get_workspaces_only_on_primary |
prefs_remove_listener |
prefs_set_force_fullscreen |
prefs_set_num_workspaces |
prefs_set_show_fallback_app_menu |
push_no_msg_prefix |
remove_clutter_debug_flags |
remove_debug_paint_flag |
remove_verbose_topic | Stop printing log messages for the given topic `topic`.
restart | Starts the process of restarting the compositor.
topic_to_string |
unsigned_long_equal |
unsigned_long_hash |
warning |

#### Function Macros

PLUGIN_DECLARE |
PLUGIN_DECLARE_WITH_CODE |
topic |
verbose |
XFree |

#### Constants

CURRENT_TIME |
PRIORITY_BEFORE_REDRAW |
PRIORITY_PREFS_NOTIFY |
PRIORITY_REDRAW |
PRIORITY_RESIZE |
VIRTUAL_CORE_KEYBOARD_ID |
VIRTUAL_CORE_POINTER_ID |