wayland: Add support for set_shadow_width
This commit is contained in:
@ -2148,6 +2148,23 @@ gdk_wayland_window_set_opaque_region (GdkWindow *window,
|
|||||||
wl_region_destroy (wl_region);
|
wl_region_destroy (wl_region);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gdk_wayland_window_set_shadow_width (GdkWindow *window,
|
||||||
|
int left,
|
||||||
|
int right,
|
||||||
|
int top,
|
||||||
|
int bottom)
|
||||||
|
{
|
||||||
|
GdkWindowImplWayland *impl = GDK_WINDOW_IMPL_WAYLAND (window->impl);
|
||||||
|
|
||||||
|
if (GDK_WINDOW_DESTROYED (window))
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (!impl->xdg_surface)
|
||||||
|
return;
|
||||||
|
|
||||||
|
xdg_surface_set_margin (impl->xdg_surface, left, right, top, bottom);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_gdk_window_impl_wayland_class_init (GdkWindowImplWaylandClass *klass)
|
_gdk_window_impl_wayland_class_init (GdkWindowImplWaylandClass *klass)
|
||||||
@ -2238,9 +2255,9 @@ _gdk_window_impl_wayland_class_init (GdkWindowImplWaylandClass *klass)
|
|||||||
impl_class->delete_property = gdk_wayland_window_delete_property;
|
impl_class->delete_property = gdk_wayland_window_delete_property;
|
||||||
impl_class->get_scale_factor = gdk_wayland_window_get_scale_factor;
|
impl_class->get_scale_factor = gdk_wayland_window_get_scale_factor;
|
||||||
impl_class->set_opaque_region = gdk_wayland_window_set_opaque_region;
|
impl_class->set_opaque_region = gdk_wayland_window_set_opaque_region;
|
||||||
|
impl_class->set_shadow_width = gdk_wayland_window_set_shadow_width;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
_gdk_wayland_window_set_device_grabbed (GdkWindow *window,
|
_gdk_wayland_window_set_device_grabbed (GdkWindow *window,
|
||||||
GdkDevice *device,
|
GdkDevice *device,
|
||||||
|
@ -124,6 +124,32 @@
|
|||||||
<arg name="parent" type="object" interface="wl_surface" allow-null="true"/>
|
<arg name="parent" type="object" interface="wl_surface" allow-null="true"/>
|
||||||
</request>
|
</request>
|
||||||
|
|
||||||
|
<request name="set_margin">
|
||||||
|
<description summary="set the visible frame boundaries">
|
||||||
|
This tells the compositor what the visible size of the window
|
||||||
|
should be, so it can use it to determine what borders to use for
|
||||||
|
constrainment and alignment.
|
||||||
|
|
||||||
|
CSD often has invisible areas for decoration purposes, like drop
|
||||||
|
shadows. These "shadow" drawings need to be subtracted out of the
|
||||||
|
normal boundaries of the window when computing where to place
|
||||||
|
windows (e.g. to set this window so it's centered on top of another,
|
||||||
|
or to put it to the left or right of the screen.)
|
||||||
|
|
||||||
|
This value should change as little as possible at runtime, to
|
||||||
|
prevent flicker.
|
||||||
|
|
||||||
|
This value is also ignored when the window is maximized or
|
||||||
|
fullscreen, and assumed to be 0.
|
||||||
|
|
||||||
|
If never called, this value is assumed to be 0.
|
||||||
|
</description>
|
||||||
|
<arg name="left_margin" type="int"/>
|
||||||
|
<arg name="right_margin" type="int"/>
|
||||||
|
<arg name="top_margin" type="int"/>
|
||||||
|
<arg name="bottom_margin" type="int"/>
|
||||||
|
</request>
|
||||||
|
|
||||||
<request name="set_title">
|
<request name="set_title">
|
||||||
<description summary="set surface title">
|
<description summary="set surface title">
|
||||||
Set a short title for the surface.
|
Set a short title for the surface.
|
||||||
|
Reference in New Issue
Block a user