summaryrefslogtreecommitdiffstats
path: root/ui/gfx/compositor/compositor.cc
diff options
context:
space:
mode:
authorpiman@chromium.org <piman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-20 22:39:45 +0000
committerpiman@chromium.org <piman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-20 22:39:45 +0000
commitfe9d23f2c945bd2cfa39f5893b5e2f000dd6baf3 (patch)
treeaf22261fc6fab81379e571eb9fa42237f2ab0e2f /ui/gfx/compositor/compositor.cc
parenta13da216e3642f8b35e1a95e09974bf144ff3f17 (diff)
downloadchromium_src-fe9d23f2c945bd2cfa39f5893b5e2f000dd6baf3.zip
chromium_src-fe9d23f2c945bd2cfa39f5893b5e2f000dd6baf3.tar.gz
chromium_src-fe9d23f2c945bd2cfa39f5893b5e2f000dd6baf3.tar.bz2
Use WebKit compositor in ui::Layer
BUG=99524 TEST=compositor_unittests Review URL: http://codereview.chromium.org/8222028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106606 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/gfx/compositor/compositor.cc')
-rw-r--r--ui/gfx/compositor/compositor.cc15
1 files changed, 14 insertions, 1 deletions
diff --git a/ui/gfx/compositor/compositor.cc b/ui/gfx/compositor/compositor.cc
index 6f7e5db..87aa06e 100644
--- a/ui/gfx/compositor/compositor.cc
+++ b/ui/gfx/compositor/compositor.cc
@@ -25,10 +25,15 @@ Compositor::Compositor(CompositorDelegate* delegate, const gfx::Size& size)
Compositor::~Compositor() {
}
+void Compositor::ScheduleDraw() {
+ delegate_->ScheduleDraw();
+}
+
void Compositor::SetRootLayer(Layer* root_layer) {
root_layer_ = root_layer;
if (!root_layer_->GetCompositor())
root_layer_->SetCompositor(this);
+ OnRootLayerChanged();
}
void Compositor::Draw(bool force_clear) {
@@ -36,7 +41,7 @@ void Compositor::Draw(bool force_clear) {
return;
NotifyStart(force_clear);
- root_layer_->DrawTree();
+ DrawTree();
NotifyEnd();
}
@@ -52,6 +57,14 @@ bool Compositor::HasObserver(CompositorObserver* observer) {
return observer_list_.HasObserver(observer);
}
+void Compositor::OnRootLayerChanged() {
+ ScheduleDraw();
+}
+
+void Compositor::DrawTree() {
+ root_layer_->DrawTree();
+}
+
void Compositor::NotifyStart(bool clear) {
OnNotifyStart(clear);
}