Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1506)

Unified Diff: cc/trees/property_tree.h

Issue 2755803003: cc: Remove SetNeedsCommitNoRebuild from Layer API (Closed)
Patch Set: check for LTH Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/trees/layer_tree_impl.cc ('k') | cc/trees/property_tree.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/trees/property_tree.h
diff --git a/cc/trees/property_tree.h b/cc/trees/property_tree.h
index eea67f77cefc664970bddba85dcc9b1e2436e753..20e42c99f9c65e42ed9a74bbad0b599f4006f075 100644
--- a/cc/trees/property_tree.h
+++ b/cc/trees/property_tree.h
@@ -82,7 +82,9 @@ class CC_EXPORT PropertyTree {
void clear();
size_t size() const { return nodes_.size(); }
- void set_needs_update(bool needs_update) { needs_update_ = needs_update; }
+ virtual void set_needs_update(bool needs_update) {
+ needs_update_ = needs_update;
+ }
bool needs_update() const { return needs_update_; }
std::vector<T>& nodes() { return nodes_; }
@@ -97,9 +99,18 @@ class CC_EXPORT PropertyTree {
void AsValueInto(base::trace_event::TracedValue* value) const;
- T* FindNodeFromOwningLayerId(int id) {
+ const T* FindNodeFromOwningLayerId(int id) const {
return Node(FindNodeIndexFromOwningLayerId(id));
}
+ T* UpdateNodeFromOwningLayerId(int id) {
+ int index = FindNodeIndexFromOwningLayerId(id);
+ if (index == kInvalidNodeId && property_trees()->is_main_thread) {
+ property_trees()->needs_rebuild = true;
+ }
+
+ return Node(index);
+ }
+
int FindNodeIndexFromOwningLayerId(int id) const {
auto iter = owning_layer_id_to_node_index.find(id);
if (iter == owning_layer_id_to_node_index.end())
@@ -183,7 +194,7 @@ class CC_EXPORT TransformTree final : public PropertyTree<TransformNode> {
TransformNode* node,
TransformNode* parent_node);
- void set_needs_update(bool needs_update);
+ void set_needs_update(bool needs_update) final;
// A TransformNode's source_to_parent value is used to account for the fact
// that fixed-position layers are positioned by Blink wrt to their layer tree
« no previous file with comments | « cc/trees/layer_tree_impl.cc ('k') | cc/trees/property_tree.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698