GtkGesture *bubble_drag_gesture;
GtkEventController *key_controller;
- GdkSurface *hardcoded_surface;
-
GtkCssNode *decoration_node;
GdkSurface *surface;
gtk_widget_get_allocation (widget, &allocation);
- if (priv->hardcoded_surface)
- {
- surface = priv->hardcoded_surface;
- gdk_surface_resize (surface, allocation.width, allocation.height);
- }
- else
+ switch (priv->type)
{
- switch (priv->type)
- {
- case GTK_WINDOW_TOPLEVEL:
- surface = gdk_surface_new_toplevel (gtk_widget_get_display (widget),
- allocation.width,
- allocation.height);
- break;
- case GTK_WINDOW_POPUP:
- surface = gdk_surface_new_temp (gtk_widget_get_display (widget), &allocation);
- break;
- default:
- g_error (G_STRLOC": Unknown window type %d!", priv->type);
- break;
- }
+ case GTK_WINDOW_TOPLEVEL:
+ surface = gdk_surface_new_toplevel (gtk_widget_get_display (widget),
+ allocation.width,
+ allocation.height);
+ break;
+ case GTK_WINDOW_POPUP:
+ surface = gdk_surface_new_temp (gtk_widget_get_display (widget), &allocation);
+ break;
+ default:
+ g_error (G_STRLOC": Unknown window type %d!", priv->type);
+ break;
}
priv->surface = surface;
gdk_surface_set_widget (surface, NULL);
gdk_surface_destroy (surface);
g_clear_object (&priv->surface);
-
- priv->hardcoded_surface = NULL;
}
static void
return TRUE;
}
-void
-gtk_window_set_hardcoded_surface (GtkWindow *window,
- GdkSurface *surface)
-{
- GtkWindowPrivate *priv = gtk_window_get_instance_private (window);
-
- g_return_if_fail (GTK_IS_WINDOW (window));
- g_return_if_fail (!_gtk_widget_get_realized (GTK_WIDGET (window)));
-
- g_set_object (&priv->hardcoded_surface, surface);
-}
-
#ifdef GDK_WINDOWING_WAYLAND
typedef struct {
GtkWindow *window;