### Signal

# Gdk Toplevel::compute-size

since: 4.0

#### Declaration

    void
    compute_size (
      GdkToplevel* self,
      GdkToplevelSize* size,
      gpointer user_data
    )

#### Description [src]

Emitted when the size for the surface needs to be computed, when it is present.

This signal will normally be emitted during or after a call to `gdk_toplevel_present()`, depending on the configuration received by the windowing system. It may also be emitted at any other point in time, in response to the windowing system spontaneously changing the configuration of the toplevel surface.

It is the responsibility of the toplevel user to handle this signal and compute the desired size of the toplevel, given the information passed via the `GdkToplevelSize` object. Failing to do so will result in an arbitrary size being used as a result.

Default handler: The default handler is called after the handlers added via `g_signal_connect()`.
Available since: 4.0

#### Parameters

`size`

  Type: `GdkToplevelSize`

  A `GdkToplevelSize`

  The data is owned by the caller of the function.