gtkmm: Gdk::Display Class Reference

gtkmm 4.22.0

Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Symbols | List of all members
Gdk::Display Class Reference

Gdk::Display object's purpose is two fold: To grab/ungrab keyboard focus and mouse pointer To manage and provide information about the Gdk::Monitor(s) available for this Gdk::Display. More...

`#include <gdkmm/display.h>`

Inheritance diagram for Gdk::Display:
[legend]

## Public Member Functions
| Display (Display && src) noexcept
Display & | operator= (Display && src) noexcept
| ~Display () noexcept override
GdkDisplay * | gobj ()
| Provides access to the underlying C GObject.
const GdkDisplay * | gobj () const
| Provides access to the underlying C GObject.
GdkDisplay * | gobj_copy ()
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
Glib::ustring | get_name () const
| Gets the name of the display.
bool | device_is_grabbed (const Glib::RefPtr< const Gdk::Device > & device) const
| Returns true if there is an ongoing grab on device for display.
void | beep ()
| Emits a short beep on display.
void | sync ()
| Flushes any requests queued for the windowing system and waits until all requests have been handled.
void | close ()
| Closes the connection to the windowing system for the given display.
bool | is_closed () const
| Finds out if the display has been closed.
bool | is_composited () const
| Returns whether surfaces can reasonably be expected to have their alpha channel drawn correctly on the screen.
bool | is_rgba () const
| Returns whether surfaces on this display are created with an alpha channel.
bool | supports_shadow_width () const
| Returns whether it's possible for a surface to draw outside of the window area.
void | put_event (const Glib::RefPtr< const Event > & event)
| Adds the given event to the event queue for display.
void | flush ()
| Flushes any requests queued for the windowing system.
Glib::RefPtr< Clipboard > | get_clipboard ()
| Gets the clipboard used for copy/paste operations.
Glib::RefPtr< const Clipboard > | get_clipboard () const
| Gets the clipboard used for copy/paste operations.
Glib::RefPtr< Clipboard > | get_primary_clipboard ()
| Gets the clipboard used for the primary selection.
Glib::RefPtr< const Clipboard > | get_primary_clipboard () const
| Gets the clipboard used for the primary selection.
bool | supports_input_shapes () const
| Returns true if the display supports input shapes.
void | prepare_gl ()
| Checks that OpenGL is available for this display and ensures that it is properly initialized.
Glib::RefPtr< GLContext > | create_gl_context ()
| Creates a new Gdk::GLContext for the Gdk::Display.
void | notify_startup_complete (const Glib::ustring & startup_id)
| Indicates to the GUI environment that the application has finished loading, using a given identifier.
Glib::ustring | get_startup_notification_id () const
| Gets the startup notification ID for a Wayland display, or nullptr if no ID has been defined.
Glib::RefPtr< AppLaunchContext > | get_app_launch_context ()
| Returns a Gdk::AppLaunchContext suitable for launching applications on the given display.
Glib::RefPtr< const AppLaunchContext > | get_app_launch_context () const
| Returns a Gdk::AppLaunchContext suitable for launching applications on the given display.
Glib::RefPtr< Seat > | get_default_seat ()
| Returns the default Gdk::Seat for this display.
Glib::RefPtr< const Seat > | get_default_seat () const
| Returns the default Gdk::Seat for this display.
std::vector< Glib::RefPtr< Seat > > | list_seats ()
| Returns the list of seats known to display.
std::vector< Glib::RefPtr< const Seat > > | list_seats () const
| Returns the list of seats known to display.
Glib::RefPtr< Gio::ListModel > | get_monitors ()
| Gets the list of monitors associated with this display.
Glib::RefPtr< const Gio::ListModel > | get_monitors () const
| Gets the list of monitors associated with this display.
Glib::RefPtr< Monitor > | get_monitor_at_surface (const Glib::RefPtr< Surface > & surface)
| Gets the monitor in which the largest area of surface resides.
Glib::RefPtr< const Monitor > | get_monitor_at_surface (const Glib::RefPtr< Surface > & surface) const
| Gets the monitor in which the largest area of surface resides.
template<class ValueType>
bool | get_setting (const Glib::ustring & name, ValueType & value) const
Glib::RefPtr< DmabufFormats > | get_dmabuf_formats ()
| Returns the dma-buf formats that are supported on this display.
Glib::RefPtr< const DmabufFormats > | get_dmabuf_formats () const
| Returns the dma-buf formats that are supported on this display.
Glib::SignalProxy< void(bool)> | signal_closed ()
Glib::SignalProxy< void()> | signal_opened ()
Glib::SignalProxy< void(const Glib::RefPtr< Seat > &)> | signal_seat_added ()
Glib::SignalProxy< void(const Glib::RefPtr< Seat > &)> | signal_seat_removed ()
Glib::SignalProxy< void(const Glib::ustring &)> | signal_setting_changed ()
Glib::PropertyProxy_ReadOnly< bool > | property_composited () const
| true if the display properly composites the alpha channel.
Glib::PropertyProxy_ReadOnly< bool > | property_rgba () const
| true if the display supports an alpha channel.
Glib::PropertyProxy_ReadOnly< bool > | property_shadow_width () const
| true if the display supports extensible frames.
Glib::PropertyProxy_ReadOnly< bool > | property_input_shapes () const
| true if the display supports input shapes.
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< DmabufFormats > > | property_dmabuf_formats () const
| The dma-buf formats that are supported on this display.
Public Member Functions inherited from Glib::Object
| Object (const Object &)=delete
Object & | operator= (const Object &)=delete
| Object (Object &&src) noexcept
Object & | operator= (Object &&src) noexcept
void * | get_data (const QueryQuark &key)
void | set_data (const Quark &key, void *data)
void | set_data_with_c_callback (const Quark &key, void *data, GDestroyNotify notify)
void | set_data (const Quark &key, void *data, DestroyNotify notify)
void | remove_data (const QueryQuark &quark)
void * | steal_data (const QueryQuark &quark)
Glib::RefPtr< Glib::Object > | wrap (GObject *object, bool take_copy=false)
Public Member Functions inherited from Glib::ObjectBase
| ObjectBase (const ObjectBase &)=delete
ObjectBase & | operator= (const ObjectBase &)=delete
void | set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value)
void | get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const
void | set_property (const Glib::ustring &property_name, const PropertyType &value)
void | get_property (const Glib::ustring &property_name, PropertyType &value) const
PropertyType | get_property (const Glib::ustring &property_name) const
sigc::connection | connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void()> &slot)
sigc::connection | connect_property_changed (const Glib::ustring &property_name, sigc::slot< void()> &&slot)
void | freeze_notify ()
void | thaw_notify ()
virtual void | reference () const
virtual void | unreference () const
GObject * | gobj ()
const GObject * | gobj () const
GObject * | gobj_copy () const
Public Member Functions inherited from sigc::trackable
| trackable () noexcept
| trackable (const trackable &src) noexcept
| trackable (trackable &&src) noexcept
| ~trackable ()
void | add_destroy_notify_callback (notifiable *data, func_destroy_notify func) const
void | notify_callbacks ()
trackable & | operator= (const trackable &src)
trackable & | operator= (trackable &&src) noexcept
void | remove_destroy_notify_callback (notifiable *data) const

## Static Public Member Functions
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system.
static Glib::RefPtr< Display > | open (const Glib::ustring & display_name)
| Opens a display.
static Glib::RefPtr< Display > | get_default ()
| Gets the default Gdk::Display.

## Protected Member Functions
| Display ()
Protected Member Functions inherited from Glib::Object
| Object ()
| Object (const Glib::ConstructParams &construct_params)
| Object (GObject *castitem)
| ~Object () noexcept override
Protected Member Functions inherited from Glib::ObjectBase
| ObjectBase ()
| ObjectBase (const char *custom_type_name)
| ObjectBase (const std::type_info &custom_type_info)
| ObjectBase (ObjectBase &&src) noexcept
ObjectBase & | operator= (ObjectBase &&src) noexcept
virtual | ~ObjectBase () noexcept=0
void | initialize (GObject *castitem)
void | initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper)

## Related Symbols
(Note that these are not member symbols.)
Glib::RefPtr< Gdk::Display > | wrap (GdkDisplay * object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Additional Inherited Members
Public Types inherited from Glib::Object
typedef void(*)(gpointer data | DestroyNotify)
Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify | func_destroy_notify
Public Types inherited from sigc::notifiable
typedef internal::func_destroy_notify | func_destroy_notify

## Detailed Description

Gdk::Display object's purpose is two fold: To grab/ungrab keyboard focus and mouse pointer To manage and provide information about the Gdk::Monitor(s) available for this Gdk::Display.

Gdk::Display objects are the GDK representation of the X Display which can be described as a workstation consisting of a keyboard a pointing device (such as a mouse) and one or more screens. It is used to open and keep track of various Gdk::Monitor objects currently instantiated by the application. It is also used to grab and release the keyboard and the mouse pointer.

## Constructor & Destructor Documentation

## ◆ Display() [1/2]

Gdk::Display::Display | ( | Display && | src | ) |
| noexcept

## ◆ ~Display()

Gdk::Display::~Display | ( |  | ) |
| overridenoexcept

## ◆ Display() [2/2]

Gdk::Display::Display | ( |  | ) |
| protected

## Member Function Documentation

## ◆ beep()

void Gdk::Display::beep | ( |  | ) |

Emits a short beep on display.

## ◆ close()

void Gdk::Display::close | ( |  | ) |

Closes the connection to the windowing system for the given display.

This cleans up associated resources.

## ◆ create_gl_context()

Glib::RefPtr< GLContext > Gdk::Display::create_gl_context | ( |  | ) |

Creates a new Gdk::GLContext for the Gdk::Display.

The context is disconnected from any particular surface or surface and cannot be used to draw to any surface. It can only be used to draw to non-surface framebuffers like textures.

If the creation of the Gdk::GLContext failed, error will be set. Before using the returned Gdk::GLContext, you will need to call Gdk::GLContext::make_current() or Gdk::GLContext::realize().

Since gtkmm 4.6

Returns
  The newly created Gdk::GLContext.

Exceptions

  Glib::Error |

## ◆ device_is_grabbed()

bool Gdk::Display::device_is_grabbed | ( | const Glib::RefPtr< const Gdk::Device > & | device | ) | const

Returns true if there is an ongoing grab on device for display.

Parameters

  device | A Gdk::Device.

Returns
  true if there is a grab in effect for device.

## ◆ flush()

void Gdk::Display::flush | ( |  | ) |

Flushes any requests queued for the windowing system.

This happens automatically when the main loop blocks waiting for new events, but if your application is drawing without returning control to the main loop, you may need to call this function explicitly. A common case where this function needs to be called is when an application is executing drawing commands from a thread other than the thread where the main loop is running.

This is most useful for X11. On windowing systems where requests are handled synchronously, this function will do nothing.

## ◆ get_app_launch_context() [1/2]

Glib::RefPtr< AppLaunchContext > Gdk::Display::get_app_launch_context | ( |  | ) |

Returns a Gdk::AppLaunchContext suitable for launching applications on the given display.

Returns
  A new Gdk::AppLaunchContext for display.

## ◆ get_app_launch_context() [2/2]

Glib::RefPtr< const AppLaunchContext > Gdk::Display::get_app_launch_context | ( |  | ) | const

Returns a Gdk::AppLaunchContext suitable for launching applications on the given display.

Returns
  A new Gdk::AppLaunchContext for display.

## ◆ get_clipboard() [1/2]

Glib::RefPtr< Clipboard > Gdk::Display::get_clipboard | ( |  | ) |

Gets the clipboard used for copy/paste operations.

Returns
  The display's clipboard.

## ◆ get_clipboard() [2/2]

Glib::RefPtr< const Clipboard > Gdk::Display::get_clipboard | ( |  | ) | const

Gets the clipboard used for copy/paste operations.

Returns
  The display's clipboard.

## ◆ get_default()

Glib::RefPtr< Display > Gdk::Display::get_default | ( |  | ) |
| static

Gets the default Gdk::Display.

This is a convenience function for:

gdk_display_manager_get_default_display (Gdk::DisplayManager::get())

Returns
  A Gdk::Display, or nullptr if there is no default display.

## ◆ get_default_seat() [1/2]

Glib::RefPtr< Seat > Gdk::Display::get_default_seat | ( |  | ) |

Returns the default Gdk::Seat for this display.

Note that a display may not have a seat. In this case, this function will return nullptr.

Returns
  The default seat.

## ◆ get_default_seat() [2/2]

Glib::RefPtr< const Seat > Gdk::Display::get_default_seat | ( |  | ) | const

Returns the default Gdk::Seat for this display.

Note that a display may not have a seat. In this case, this function will return nullptr.

Returns
  The default seat.

## ◆ get_dmabuf_formats() [1/2]

Glib::RefPtr< DmabufFormats > Gdk::Display::get_dmabuf_formats | ( |  | ) |

Returns the dma-buf formats that are supported on this display.

GTK may use OpenGL or Vulkan to support some formats. Calling this function will then initialize them if they aren't yet.

The formats returned by this function can be used for negotiating buffer formats with producers such as v4l, pipewire or GStreamer.

To learn more about dma-bufs, see Gdk::DmabufTextureBuilder.

This function is threadsafe. It can be called from any thread.

Since gtkmm 4.14

Returns
  A Gdk::DmabufFormats object.

## ◆ get_dmabuf_formats() [2/2]

Glib::RefPtr< const DmabufFormats > Gdk::Display::get_dmabuf_formats | ( |  | ) | const

Returns the dma-buf formats that are supported on this display.

GTK may use OpenGL or Vulkan to support some formats. Calling this function will then initialize them if they aren't yet.

The formats returned by this function can be used for negotiating buffer formats with producers such as v4l, pipewire or GStreamer.

To learn more about dma-bufs, see Gdk::DmabufTextureBuilder.

This function is threadsafe. It can be called from any thread.

Since gtkmm 4.14

Returns
  A Gdk::DmabufFormats object.

## ◆ get_monitor_at_surface() [1/2]

Glib::RefPtr< Monitor > Gdk::Display::get_monitor_at_surface | ( | const Glib::RefPtr< Surface > & | surface | ) |

Gets the monitor in which the largest area of surface resides.

Parameters

  surface | A Gdk::Surface.

Returns
  The monitor with the largest overlap with surface.

## ◆ get_monitor_at_surface() [2/2]

Glib::RefPtr< const Monitor > Gdk::Display::get_monitor_at_surface | ( | const Glib::RefPtr< Surface > & | surface | ) | const

Gets the monitor in which the largest area of surface resides.

Parameters

  surface | A Gdk::Surface.

Returns
  The monitor with the largest overlap with surface.

## ◆ get_monitors() [1/2]

Glib::RefPtr< Gio::ListModel > Gdk::Display::get_monitors | ( |  | ) |

Gets the list of monitors associated with this display.

Subsequent calls to this function will always return the same list for the same display.

You can listen to the GListModel::items-changed signal on this list to monitor changes to the monitor of this display.

Returns
  A Gio::ListModel of Gdk::Monitor.

## ◆ get_monitors() [2/2]

Glib::RefPtr< const Gio::ListModel > Gdk::Display::get_monitors | ( |  | ) | const

Gets the list of monitors associated with this display.

Subsequent calls to this function will always return the same list for the same display.

You can listen to the GListModel::items-changed signal on this list to monitor changes to the monitor of this display.

Returns
  A Gio::ListModel of Gdk::Monitor.

## ◆ get_name()

Glib::ustring Gdk::Display::get_name | ( |  | ) | const

Gets the name of the display.

Returns
  A string representing the display name. This string is owned by GDK and should not be modified or freed.

## ◆ get_primary_clipboard() [1/2]

Glib::RefPtr< Clipboard > Gdk::Display::get_primary_clipboard | ( |  | ) |

Gets the clipboard used for the primary selection.

On backends where the primary clipboard is not supported natively, GDK emulates this clipboard locally.

Returns
  The primary clipboard.

## ◆ get_primary_clipboard() [2/2]

Glib::RefPtr< const Clipboard > Gdk::Display::get_primary_clipboard | ( |  | ) | const

Gets the clipboard used for the primary selection.

On backends where the primary clipboard is not supported natively, GDK emulates this clipboard locally.

Returns
  The primary clipboard.

## ◆ get_setting()

template <class ValueType>

bool Gdk::Display::get_setting | ( | const Glib::ustring & | name,
|  | ValueType & | value ) const

## ◆ get_startup_notification_id()

Glib::ustring Gdk::Display::get_startup_notification_id | ( |  | ) | const

Gets the startup notification ID for a Wayland display, or nullptr if no ID has been defined.

Deprecated: 4.10

Returns
  The startup notification ID for display.

## ◆ get_type()

GType Gdk::Display::get_type | ( |  | ) |
| static

Get the GType for this class, for use with the underlying GObject type system.

## ◆ gobj() [1/2]

GdkDisplay * Gdk::Display::gobj | ( |  | ) |
| inline

Provides access to the underlying C GObject.

## ◆ gobj() [2/2]

const GdkDisplay * Gdk::Display::gobj | ( |  | ) | const
| inline

Provides access to the underlying C GObject.

## ◆ gobj_copy()

GdkDisplay * Gdk::Display::gobj_copy | ( |  | ) |

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

## ◆ is_closed()

bool Gdk::Display::is_closed | ( |  | ) | const

Finds out if the display has been closed.

Returns
  true if the display is closed.

## ◆ is_composited()

bool Gdk::Display::is_composited | ( |  | ) | const

Returns whether surfaces can reasonably be expected to have their alpha channel drawn correctly on the screen.

Check is_rgba() for whether the display supports an alpha channel.

On X11 this function returns whether a compositing manager is compositing on display.

On modern displays, this value is always true.

Returns
  Whether surfaces with RGBA visuals can reasonably be expected to have their alpha channels drawn correctly on the screen.

## ◆ is_rgba()

bool Gdk::Display::is_rgba | ( |  | ) | const

Returns whether surfaces on this display are created with an alpha channel.

Even if a true is returned, it is possible that the surface’s alpha channel won’t be honored when displaying the surface on the screen: in particular, for X an appropriate windowing manager and compositing manager must be running to provide appropriate display. Use is_composited() to check if that is the case.

On modern displays, this value is always true.

Returns
  true if surfaces are created with an alpha channel or false if the display does not support this functionality.

## ◆ list_seats() [1/2]

std::vector< Glib::RefPtr< Seat > > Gdk::Display::list_seats | ( |  | ) |

Returns the list of seats known to display.

Returns
  The list of seats known to the Gdk::Display.

## ◆ list_seats() [2/2]

std::vector< Glib::RefPtr< const Seat > > Gdk::Display::list_seats | ( |  | ) | const

Returns the list of seats known to display.

Returns
  The list of seats known to the Gdk::Display.

## ◆ notify_startup_complete()

void Gdk::Display::notify_startup_complete | ( | const Glib::ustring & | startup_id | ) |

Indicates to the GUI environment that the application has finished loading, using a given identifier.

GTK will call this function automatically for GtkWindow with custom startup-notification identifier unless gtk_window_set_auto_startup_notification() is called to disable that feature.

Deprecated: 4.10: Using Gdk::Toplevel::set_startup_id() is sufficient

Deprecated
  Using Gdk::Toplevel::set_startup_id() is sufficient.

Parameters

  startup_id | A startup-notification identifier, for which notification process should be completed.

## ◆ open()

Glib::RefPtr< Display > Gdk::Display::open | ( | const Glib::ustring & | display_name | ) |
| static

Opens a display.

If opening the display fails, nullptr is returned.

Parameters

  display_name | The name of the display to open.

Returns
  A Gdk::Display.

## ◆ operator=()

Display & Gdk::Display::operator= | ( | Display && | src | ) |
| noexcept

## ◆ prepare_gl()

void Gdk::Display::prepare_gl | ( |  | ) |

Checks that OpenGL is available for this display and ensures that it is properly initialized.

When this fails, an exception will be thrown describing the error.

Note that even if this function succeeds, creating a Gdk::GLContext may still fail.

This function is idempotent. Calling it multiple times will just return the same value or error.

You never need to call this function, GDK will call it automatically as needed. But you can use it as a check when setting up code that might make use of OpenGL.

Since gtkmm 4.4

Exceptions

  Glib::Error |

## ◆ property_composited()

Glib::PropertyProxy_ReadOnly< bool > Gdk::Display::property_composited | ( |  | ) | const

true if the display properly composites the alpha channel.

Default value: true

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_dmabuf_formats()

Glib::PropertyProxy_ReadOnly< Glib::RefPtr< DmabufFormats > > Gdk::Display::property_dmabuf_formats | ( |  | ) | const

The dma-buf formats that are supported on this display.

Since gtkmm 4.14

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_input_shapes()

Glib::PropertyProxy_ReadOnly< bool > Gdk::Display::property_input_shapes | ( |  | ) | const

true if the display supports input shapes.

Default value: true

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_rgba()

Glib::PropertyProxy_ReadOnly< bool > Gdk::Display::property_rgba | ( |  | ) | const

true if the display supports an alpha channel.

Default value: true

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_shadow_width()

Glib::PropertyProxy_ReadOnly< bool > Gdk::Display::property_shadow_width | ( |  | ) | const

true if the display supports extensible frames.

Since gtkmm 4.14

Default value: true

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ put_event()

void Gdk::Display::put_event | ( | const Glib::RefPtr< const Event > & | event | ) |

Adds the given event to the event queue for display.

Deprecated: 4.10: This function is only useful in very special situations and should not be used by applications.

Deprecated
  This function is only useful in very special situations and should not be used by applications.

Parameters

  event | A Gdk::Event.

## ◆ signal_closed()

Glib::SignalProxy< void(bool)> Gdk::Display::signal_closed | ( |  | ) |

Slot Prototype:
  void on_my_closed(bool is_error)

Flags: Run Last

Emitted when the connection to the windowing system for display is closed.

Parameters

  is_error | true if the display was closed due to an error.

## ◆ signal_opened()

Glib::SignalProxy< void()> Gdk::Display::signal_opened | ( |  | ) |

Slot Prototype:
  void on_my_opened()

Flags: Run Last

Emitted when the connection to the windowing system for display is opened.

## ◆ signal_seat_added()

Glib::SignalProxy< void(const Glib::RefPtr< Seat > &)> Gdk::Display::signal_seat_added | ( |  | ) |

Slot Prototype:
  void on_my_seat_added(const Glib::RefPtr<Seat>& seat)

Flags: Run Last

Emitted whenever a new seat is made known to the windowing system.

Parameters

  seat | The seat that was just added.

## ◆ signal_seat_removed()

Glib::SignalProxy< void(const Glib::RefPtr< Seat > &)> Gdk::Display::signal_seat_removed | ( |  | ) |

Slot Prototype:
  void on_my_seat_removed(const Glib::RefPtr<Seat>& seat)

Flags: Run Last

Emitted whenever a seat is removed by the windowing system.

Parameters

  seat | The seat that was just removed.

## ◆ signal_setting_changed()

Glib::SignalProxy< void(const Glib::ustring &)> Gdk::Display::signal_setting_changed | ( |  | ) |

Slot Prototype:
  void on_my_setting_changed(const Glib::ustring& setting)

Flags: Run Last

Emitted whenever a setting changes its value.

Parameters

  setting | The name of the setting that changed.

## ◆ supports_input_shapes()

bool Gdk::Display::supports_input_shapes | ( |  | ) | const

Returns true if the display supports input shapes.

This means that Gdk::Surface::set_input_region() can be used to modify the input shape of surfaces on display.

On modern displays, this value is always true.

Returns
  true if surfaces with modified input shape are supported.

## ◆ supports_shadow_width()

bool Gdk::Display::supports_shadow_width | ( |  | ) | const

Returns whether it's possible for a surface to draw outside of the window area.

If true is returned the application decides if it wants to draw shadows. If false is returned, the compositor decides if it wants to draw shadows.

Since gtkmm 4.14

Returns
  true if surfaces can draw shadows or false if the display does not support this functionality.

## ◆ sync()

void Gdk::Display::sync | ( |  | ) |

Flushes any requests queued for the windowing system and waits until all requests have been handled.

This is often used for making sure that the display is synchronized with the current state of the program. Calling sync() before GdkX11::Display::error_trap_pop() makes sure that any errors generated from earlier requests are handled before the error trap is removed.

This is most useful for X11. On windowing systems where requests are handled synchronously, this function will do nothing.

## Friends And Related Symbol Documentation

## ◆ wrap()

Glib::RefPtr< Gdk::Display > wrap | ( | GdkDisplay * | object,
|  | bool | take_copy = false )
| related

A Glib::wrap() method for this object.

Parameters

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns
  A C++ instance that wraps this C instance.