summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2023-02-21 15:03:16 -0500
committerMatthias Clasen <mclasen@redhat.com>2023-02-21 15:04:30 -0500
commit49e93f6ee43586c3f2abf9eddc192a026c093ef8 (patch)
tree45a1bc85e70af255d835366342fbe326c76e1d65
parent4ec2234537337814c6f970510192a3d597b39344 (diff)
downloadgtk+-frame-clock-debugging.tar.gz
textview: Don't validate during snapshotframe-clock-debugging
Do it during size_allocate, and go back there if needed.
-rw-r--r--gtk/gtktextview.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/gtk/gtktextview.c b/gtk/gtktextview.c
index 271f642294..78ea530617 100644
--- a/gtk/gtktextview.c
+++ b/gtk/gtktextview.c
@@ -4689,10 +4689,6 @@ gtk_text_view_size_allocate (GtkWidget *widget,
}
g_object_unref (layout);
- /* The GTK resize loop processes all the pending exposes right
- * after doing the resize stuff, so the idle sizer won't have a
- * chance to run. So we do the work here.
- */
gtk_text_view_flush_first_validate (text_view);
chooser = g_object_get_data (G_OBJECT (text_view), "gtk-emoji-chooser");
@@ -4876,6 +4872,8 @@ gtk_text_view_invalidate (GtkTextView *text_view)
DV (g_print (G_STRLOC": adding incremental validate idle %d\n",
priv->incremental_validate_idle));
}
+
+ gtk_widget_queue_allocate (GTK_WIDGET (text_view));
}
static void
@@ -5843,6 +5841,9 @@ gtk_text_view_paint (GtkWidget *widget,
g_return_if_fail (priv->xoffset >= - priv->left_padding);
g_return_if_fail (priv->yoffset >= - priv->top_margin);
+ if (priv->first_validate_idle != 0)
+ g_critical ("textview: paint with unfinished validation\n");
+
while (priv->first_validate_idle != 0)
{
DV (g_print (G_STRLOC": first_validate_idle: %d\n",