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

Side by Side Diff: ui/gl/gl_surface.h

Issue 1583283004: Ensure alpha channel in backbuffer is correct with DirectComposition. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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 #ifndef UI_GL_GL_SURFACE_H_ 5 #ifndef UI_GL_GL_SURFACE_H_
6 #define UI_GL_GL_SURFACE_H_ 6 #define UI_GL_GL_SURFACE_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 unsigned edge_aa_mask, 176 unsigned edge_aa_mask,
177 const RectF& bounds_rect, 177 const RectF& bounds_rect,
178 bool is_clipped, 178 bool is_clipped,
179 const RectF& clip_rect, 179 const RectF& clip_rect,
180 const Transform& transform); 180 const Transform& transform);
181 181
182 virtual bool IsSurfaceless() const; 182 virtual bool IsSurfaceless() const;
183 183
184 virtual bool FlipsVertically() const; 184 virtual bool FlipsVertically() const;
185 185
186 // Returns true if SwapBuffers or PostSubBuffers causes a flip, such that
187 // the next buffer may be 2 frames old.
188 virtual bool BuffersFlipped() const;
189
186 // Create a GL surface that renders directly to a view. 190 // Create a GL surface that renders directly to a view.
187 static scoped_refptr<GLSurface> CreateViewGLSurface( 191 static scoped_refptr<GLSurface> CreateViewGLSurface(
188 gfx::AcceleratedWidget window); 192 gfx::AcceleratedWidget window);
189 193
190 #if defined(USE_OZONE) 194 #if defined(USE_OZONE)
191 // Create a GL surface that renders directly into a window with surfaceless 195 // Create a GL surface that renders directly into a window with surfaceless
192 // semantics - there is no default framebuffer and the primary surface must 196 // semantics - there is no default framebuffer and the primary surface must
193 // be presented as an overlay. If surfaceless mode is not supported or 197 // be presented as an overlay. If surfaceless mode is not supported or
194 // enabled it will return a null pointer. 198 // enabled it will return a null pointer.
195 static scoped_refptr<GLSurface> CreateSurfacelessViewGLSurface( 199 static scoped_refptr<GLSurface> CreateSurfacelessViewGLSurface(
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
263 void* GetConfig() override; 267 void* GetConfig() override;
264 unsigned GetFormat() override; 268 unsigned GetFormat() override;
265 VSyncProvider* GetVSyncProvider() override; 269 VSyncProvider* GetVSyncProvider() override;
266 bool ScheduleOverlayPlane(int z_order, 270 bool ScheduleOverlayPlane(int z_order,
267 OverlayTransform transform, 271 OverlayTransform transform,
268 gl::GLImage* image, 272 gl::GLImage* image,
269 const Rect& bounds_rect, 273 const Rect& bounds_rect,
270 const RectF& crop_rect) override; 274 const RectF& crop_rect) override;
271 bool IsSurfaceless() const override; 275 bool IsSurfaceless() const override;
272 bool FlipsVertically() const override; 276 bool FlipsVertically() const override;
277 bool BuffersFlipped() const override;
273 278
274 GLSurface* surface() const { return surface_.get(); } 279 GLSurface* surface() const { return surface_.get(); }
275 280
276 protected: 281 protected:
277 ~GLSurfaceAdapter() override; 282 ~GLSurfaceAdapter() override;
278 283
279 private: 284 private:
280 scoped_refptr<GLSurface> surface_; 285 scoped_refptr<GLSurface> surface_;
281 286
282 DISALLOW_COPY_AND_ASSIGN(GLSurfaceAdapter); 287 DISALLOW_COPY_AND_ASSIGN(GLSurfaceAdapter);
283 }; 288 };
284 289
285 } // namespace gfx 290 } // namespace gfx
286 291
287 #endif // UI_GL_GL_SURFACE_H_ 292 #endif // UI_GL_GL_SURFACE_H_
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/gles2_cmd_decoder_unittest_framebuffers.cc ('k') | ui/gl/gl_surface.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698