gtk2/gtk/gtknativeprivate.h
Jonas Ådahl 8a599b2582 gtk: Allocate everything from GtkNativeClass::layout
This changes allocation of the widget trees to happen as a side effect
to the GdkSurface::layout signal, which first passes the GtkNative
instance where it is then forwarded to the implementations of the
GtkNative interface.

The implementations of GtkNative are the ones doing the actual
gtk_widget_allocate(), and they do so in their GtkNativeClass::layout
function.
2020-12-07 09:46:39 +01:00

38 lines
1001 B
C

#ifndef __GTK_NATIVE_PRIVATE_H__
#define __GTK_NATIVE_PRIVATE_H__
#include "gtknative.h"
G_BEGIN_DECLS
/**
* GtkNativeIface:
*
* The list of functions that must be implemented for the #GtkNative interface.
*/
struct _GtkNativeInterface
{
/*< private >*/
GTypeInterface g_iface;
/*< public >*/
GdkSurface * (* get_surface) (GtkNative *self);
GskRenderer * (* get_renderer) (GtkNative *self);
void (* get_surface_transform) (GtkNative *self,
double *x,
double *y);
void (* check_resize) (GtkNative *self);
void (* layout) (GtkNative *self,
int width,
int height);
};
void gtk_native_queue_relayout (GtkNative *native);
G_END_DECLS
#endif /* __GTK_NATIVE_PRIVATE_H__ */