Only do full tree sync if tree is actually changed, otherwise just push properties

We only have to run the complete tree synchronization algorithm if the cc::Layer tree's
structure is actually changed, otherwise we can just push properties over since the
cc::LayerImpl tree structure is never changed outside of commit.

Since scroll offset updates are tied into the tree synchronization algorithm, we currently
have to do a full tree sync for scroll updates. Fixing this will speed up scroll operations
but requires a bit more work.

Speeds up cc_perftests tenTenSingleThread by 7.3%

BUG=161166


Review URL: https://chromiumcodereview.appspot.com/11316297

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170881 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/cc/layer.h b/cc/layer.h
index f8506500c..a031635 100644
--- a/cc/layer.h
+++ b/cc/layer.h
@@ -309,6 +309,7 @@
     Layer();
 
     void setNeedsCommit();
+    void setNeedsFullTreeSync();
 
     // This flag is set when layer need repainting/updating.
     bool m_needsDisplay;