summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2017-11-30 17:32:01 +0100
committerAlexander Larsson <alexl@redhat.com>2017-11-30 21:57:42 +0100
commitaf890e66777497c732bc2117d3f013fa1557d1e9 (patch)
tree628bcd6dc1817d5230100c1d55fd5b531aba8495
parentd43008b2a5cad4c41dc92c7e3bd57b51b6e3de0f (diff)
downloadgtk+-af890e66777497c732bc2117d3f013fa1557d1e9.tar.gz
broadway: Don't send node updates to browser if nothing changed
-rw-r--r--gdk/broadway/broadway-output.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gdk/broadway/broadway-output.c b/gdk/broadway/broadway-output.c
index 226526219a..81332fa795 100644
--- a/gdk/broadway/broadway-output.c
+++ b/gdk/broadway/broadway-output.c
@@ -373,6 +373,12 @@ broadway_output_window_set_nodes (BroadwayOutput *output,
BroadwayNode *old_root)
{
gsize size_pos, start, end;
+
+ /* Early return if nothing changed */
+ if (old_root != NULL &&
+ broadway_node_deep_equal (root, old_root))
+ return;
+
write_header (output, BROADWAY_OP_SET_NODES);
append_uint16 (output, id);