[gtk/benzea/fix-css-update] cssnode: Don't queue_validate/deque_validate invisible nodes
- From: Benjamin Berg <bberg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/benzea/fix-css-update] cssnode: Don't queue_validate/deque_validate invisible nodes
- Date: Mon, 15 Jun 2020 19:32:19 +0000 (UTC)
commit 7a5caf1bc063d400604fa642a4b40aa0aec19983
Author: Benjamin Berg <bberg redhat com>
Date: Mon Jun 15 21:15:58 2020 +0200
cssnode: Don't queue_validate/deque_validate invisible nodes
Otherwise setting/unsetting the parrent may cause on an invisible widget
may cause the style to be continuously updated.
Fixes: #2849
gtk/gtkcssnode.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/gtk/gtkcssnode.c b/gtk/gtkcssnode.c
index 1a9aa3e997..42d9eb6c6c 100644
--- a/gtk/gtkcssnode.c
+++ b/gtk/gtkcssnode.c
@@ -706,14 +706,14 @@ gtk_css_node_get_timestamp (GtkCssNode *cssnode)
static void
gtk_css_node_parent_was_unset (GtkCssNode *node)
{
- if (node->invalid)
+ if (node->visible && node->invalid)
GTK_CSS_NODE_GET_CLASS (node)->queue_validate (node);
}
static void
gtk_css_node_parent_will_be_set (GtkCssNode *node)
{
- if (node->invalid)
+ if (node->visible && node->invalid)
GTK_CSS_NODE_GET_CLASS (node)->dequeue_validate (node);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]