Index: mojo/services/view_manager/root_node_manager.cc |
diff --git a/mojo/services/view_manager/root_node_manager.cc b/mojo/services/view_manager/root_node_manager.cc |
index 03a81d294317c2293c139f8918b91d05311c736a..a60a7e274a4f662fd9673558528086abd91b5a63 100644 |
--- a/mojo/services/view_manager/root_node_manager.cc |
+++ b/mojo/services/view_manager/root_node_manager.cc |
@@ -252,6 +252,16 @@ void RootNodeManager::OnNodeBoundsChanged(const Node* node, |
const gfx::Rect& old_bounds, |
const gfx::Rect& new_bounds) { |
ProcessNodeBoundsChanged(node, old_bounds, new_bounds); |
+ if (!node->parent()) |
+ return; |
+ |
+ // TODO(sky): optimize this. |
+ root_view_manager_.SchedulePaint(node->parent(), old_bounds); |
+ root_view_manager_.SchedulePaint(node->parent(), new_bounds); |
+} |
+ |
+void RootNodeManager::OnNodeBitmapChanged(const Node* node) { |
+ root_view_manager_.SchedulePaint(node, gfx::Rect(node->bounds().size())); |
} |
} // namespace service |