Improve CPU usage by ignoring ScheduleAnimation() and ScheduleComposite() calls when not using accelerated compositing (issue #456).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@420 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
parent
2bbd89f97d
commit
bbe2a2f2d3
|
@ -15,6 +15,9 @@ using WebKit::WebSize;
|
|||
|
||||
|
||||
void WebWidgetHost::ScheduleAnimation() {
|
||||
if (!webwidget_ || !webwidget_->isAcceleratedCompositingActive())
|
||||
return;
|
||||
|
||||
MessageLoop::current()->PostDelayedTask(FROM_HERE,
|
||||
base::Bind(&WebWidgetHost::ScheduleComposite, weak_factory_.GetWeakPtr()),
|
||||
10);
|
||||
|
|
|
@ -303,6 +303,9 @@ void WebWidgetHost::DidScrollRect(int dx, int dy, const gfx::Rect& clip_rect) {
|
|||
}
|
||||
|
||||
void WebWidgetHost::ScheduleComposite() {
|
||||
if (!webwidget_ || !webwidget_->isAcceleratedCompositingActive())
|
||||
return;
|
||||
|
||||
int width = logical_size_.width();
|
||||
int height = logical_size_.height();
|
||||
GdkRectangle grect = {
|
||||
|
|
|
@ -228,6 +228,9 @@ void WebWidgetHost::Paint(SkRegion& update_rgn) {
|
|||
}
|
||||
|
||||
void WebWidgetHost::ScheduleComposite() {
|
||||
if (!webwidget_ || !webwidget_->isAcceleratedCompositingActive())
|
||||
return;
|
||||
|
||||
[view_ setNeedsDisplay:YES];
|
||||
}
|
||||
|
||||
|
|
|
@ -309,8 +309,9 @@ void WebWidgetHost::DidScrollRect(int dx, int dy, const gfx::Rect& clip_rect) {
|
|||
}
|
||||
|
||||
void WebWidgetHost::ScheduleComposite() {
|
||||
if (!webwidget_)
|
||||
if (!webwidget_ || !webwidget_->isAcceleratedCompositingActive())
|
||||
return;
|
||||
|
||||
WebSize size = webwidget_->size();
|
||||
InvalidateRect(gfx::Rect(0, 0, size.width, size.height));
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue