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

Side by Side Diff: content/browser/renderer_host/compositor_impl_android.cc

Issue 2323123002: Make disable vsync run the renderer independently (Closed)
Patch Set: With additional comment Created 4 years, 3 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/renderer_host/compositor_impl_android.h" 5 #include "content/browser/renderer_host/compositor_impl_android.h"
6 6
7 #include <android/bitmap.h> 7 #include <android/bitmap.h>
8 #include <android/native_window_jni.h> 8 #include <android/native_window_jni.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 #include <unordered_set> 10 #include <unordered_set>
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after
147 : compositor_(compositor) { 147 : compositor_(compositor) {
148 compositor_->AddObserver(this); 148 compositor_->AddObserver(this);
149 } 149 }
150 ~ExternalBeginFrameSource() override { compositor_->RemoveObserver(this); } 150 ~ExternalBeginFrameSource() override { compositor_->RemoveObserver(this); }
151 151
152 // cc::BeginFrameSource implementation. 152 // cc::BeginFrameSource implementation.
153 void AddObserver(cc::BeginFrameObserver* obs) override; 153 void AddObserver(cc::BeginFrameObserver* obs) override;
154 void RemoveObserver(cc::BeginFrameObserver* obs) override; 154 void RemoveObserver(cc::BeginFrameObserver* obs) override;
155 void DidFinishFrame(cc::BeginFrameObserver* obs, 155 void DidFinishFrame(cc::BeginFrameObserver* obs,
156 size_t remaining_frames) override {} 156 size_t remaining_frames) override {}
157 bool IsThrottled() const override { return true; }
157 158
158 // CompositorImpl::VSyncObserver implementation. 159 // CompositorImpl::VSyncObserver implementation.
159 void OnVSync(base::TimeTicks frame_time, 160 void OnVSync(base::TimeTicks frame_time,
160 base::TimeDelta vsync_period) override; 161 base::TimeDelta vsync_period) override;
161 162
162 private: 163 private:
163 CompositorImpl* const compositor_; 164 CompositorImpl* const compositor_;
164 std::unordered_set<cc::BeginFrameObserver*> observers_; 165 std::unordered_set<cc::BeginFrameObserver*> observers_;
165 cc::BeginFrameArgs last_begin_frame_args_; 166 cc::BeginFrameArgs last_begin_frame_args_;
166 }; 167 };
(...skipping 651 matching lines...) Expand 10 before | Expand all | Expand 10 after
818 819
819 TRACE_EVENT0("compositor", "Compositor::SetNeedsAnimate"); 820 TRACE_EVENT0("compositor", "Compositor::SetNeedsAnimate");
820 host_->SetNeedsAnimate(); 821 host_->SetNeedsAnimate();
821 } 822 }
822 823
823 bool CompositorImpl::HavePendingReadbacks() { 824 bool CompositorImpl::HavePendingReadbacks() {
824 return !readback_layer_tree_->children().empty(); 825 return !readback_layer_tree_->children().empty();
825 } 826 }
826 827
827 } // namespace content 828 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698