| Index: remoting/client/display/gl_canvas.cc
|
| diff --git a/remoting/client/display/gl_canvas.cc b/remoting/client/display/gl_canvas.cc
|
| index 31d6b959e7dc4f20e0ded8f9f3eca18c40c65356..c61a43c1dec17018118d3fd8ff9446eb5f2f61f6 100644
|
| --- a/remoting/client/display/gl_canvas.cc
|
| +++ b/remoting/client/display/gl_canvas.cc
|
| @@ -65,7 +65,8 @@ const char kDrawTexFrag[] =
|
|
|
| namespace remoting {
|
|
|
| -GlCanvas::GlCanvas(int gl_version) : gl_version_(gl_version) {
|
| +GlCanvas::GlCanvas(int gl_version)
|
| + : gl_version_(gl_version), weak_factory_(this) {
|
| glGetIntegerv(GL_MAX_TEXTURE_SIZE, &max_texture_size_);
|
|
|
| vertex_shader_ = CompileShader(GL_VERTEX_SHADER, kTexCoordToViewVert);
|
| @@ -96,6 +97,17 @@ GlCanvas::~GlCanvas() {
|
| glDeleteShader(fragment_shader_);
|
| }
|
|
|
| +void GlCanvas::Clear() {
|
| +#ifndef NDEBUG
|
| + // Set the background clear color to bright green for debugging purposes.
|
| + glClearColor(0.0f, 1.0f, 0.0f, 1.0f);
|
| +#else
|
| + // Set the background clear color to black.
|
| + glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
|
| +#endif
|
| + glClear(GL_COLOR_BUFFER_BIT);
|
| +}
|
| +
|
| void GlCanvas::SetTransformationMatrix(const std::array<float, 9>& matrix) {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| std::array<float, 9> transposed_matrix = matrix;
|
| @@ -114,8 +126,8 @@ void GlCanvas::SetViewSize(int width, int height) {
|
| }
|
|
|
| void GlCanvas::DrawTexture(int texture_id,
|
| - GLuint texture_handle,
|
| - GLuint vertex_buffer,
|
| + int texture_handle,
|
| + int vertex_buffer,
|
| float alpha_multiplier) {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| if (!view_size_set_ || !transformation_set_) {
|
| @@ -137,7 +149,7 @@ void GlCanvas::DrawTexture(int texture_id,
|
| glBindTexture(GL_TEXTURE_2D, 0);
|
| }
|
|
|
| -int GlCanvas::GetGlVersion() const {
|
| +int GlCanvas::GetVersion() const {
|
| return gl_version_;
|
| }
|
|
|
| @@ -145,4 +157,9 @@ int GlCanvas::GetMaxTextureSize() const {
|
| return max_texture_size_;
|
| }
|
|
|
| +base::WeakPtr<Canvas> GlCanvas::GetWeakPtr() {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| + return weak_factory_.GetWeakPtr();
|
| +}
|
| +
|
| } // namespace remoting
|
|
|