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

Side by Side Diff: ui/gl/gl_image_glx.cc

Issue 1001833005: Update from https://crrev.com/320343 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Supress Created 5 years, 9 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
« no previous file with comments | « ui/gl/gl.gyp ('k') | ui/gl/gl_implementation_win.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 extern "C" { 5 extern "C" {
6 #include <X11/Xlib.h> 6 #include <X11/Xlib.h>
7 } 7 }
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
11 #include "ui/gl/gl_bindings.h" 11 #include "ui/gl/gl_bindings.h"
12 #include "ui/gl/gl_image_glx.h" 12 #include "ui/gl/gl_image_glx.h"
13 #include "ui/gl/gl_surface_glx.h" 13 #include "ui/gl/gl_surface_glx.h"
14 14
15 namespace gfx { 15 namespace gfx {
16 16
17 namespace { 17 namespace {
18 18
19 // scoped_ptr functor for XFree(). Use as follows:
20 // scoped_ptr<XVisualInfo, ScopedPtrXFree> foo(...);
21 // where "XVisualInfo" is any X type that is freed with XFree.
22 struct ScopedPtrXFree {
23 void operator()(void* x) const { ::XFree(x); }
24 };
25
26 bool ValidFormat(unsigned internalformat) { 19 bool ValidFormat(unsigned internalformat) {
27 switch (internalformat) { 20 switch (internalformat) {
28 case GL_RGB: 21 case GL_RGB:
29 case GL_RGBA: 22 case GL_RGBA:
30 return true; 23 return true;
31 default: 24 default:
32 return false; 25 return false;
33 } 26 }
34 } 27 }
35 28
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 127
135 DCHECK_EQ(PixmapDepth(internalformat_), ActualPixmapDepth(pixmap)); 128 DCHECK_EQ(PixmapDepth(internalformat_), ActualPixmapDepth(pixmap));
136 DCHECK_EQ(size_.ToString(), ActualPixmapSize(pixmap).ToString()); 129 DCHECK_EQ(size_.ToString(), ActualPixmapSize(pixmap).ToString());
137 130
138 int config_attribs[] = { 131 int config_attribs[] = {
139 GLX_DRAWABLE_TYPE, GLX_PIXMAP_BIT, 132 GLX_DRAWABLE_TYPE, GLX_PIXMAP_BIT,
140 GLX_BIND_TO_TEXTURE_TARGETS_EXT, GLX_TEXTURE_2D_EXT, 133 GLX_BIND_TO_TEXTURE_TARGETS_EXT, GLX_TEXTURE_2D_EXT,
141 BindToTextureFormat(internalformat_), GL_TRUE, 134 BindToTextureFormat(internalformat_), GL_TRUE,
142 0}; 135 0};
143 int num_elements = 0; 136 int num_elements = 0;
144 scoped_ptr<GLXFBConfig, ScopedPtrXFree> config( 137 gfx::XScopedPtr<GLXFBConfig> config(
145 glXChooseFBConfig(gfx::GetXDisplay(), 138 glXChooseFBConfig(gfx::GetXDisplay(), DefaultScreen(gfx::GetXDisplay()),
146 DefaultScreen(gfx::GetXDisplay()), 139 config_attribs, &num_elements));
147 config_attribs,
148 &num_elements));
149 if (!config.get()) { 140 if (!config.get()) {
150 DVLOG(0) << "glXChooseFBConfig failed."; 141 DVLOG(0) << "glXChooseFBConfig failed.";
151 return false; 142 return false;
152 } 143 }
153 if (!num_elements) { 144 if (!num_elements) {
154 DVLOG(0) << "glXChooseFBConfig returned 0 elements."; 145 DVLOG(0) << "glXChooseFBConfig returned 0 elements.";
155 return false; 146 return false;
156 } 147 }
157 148
158 int pixmap_attribs[] = {GLX_TEXTURE_TARGET_EXT, GLX_TEXTURE_2D_EXT, 149 int pixmap_attribs[] = {GLX_TEXTURE_TARGET_EXT, GLX_TEXTURE_2D_EXT,
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
202 193
203 bool GLImageGLX::ScheduleOverlayPlane(gfx::AcceleratedWidget widget, 194 bool GLImageGLX::ScheduleOverlayPlane(gfx::AcceleratedWidget widget,
204 int z_order, 195 int z_order,
205 OverlayTransform transform, 196 OverlayTransform transform,
206 const Rect& bounds_rect, 197 const Rect& bounds_rect,
207 const RectF& crop_rect) { 198 const RectF& crop_rect) {
208 return false; 199 return false;
209 } 200 }
210 201
211 } // namespace gfx 202 } // namespace gfx
OLDNEW
« no previous file with comments | « ui/gl/gl.gyp ('k') | ui/gl/gl_implementation_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698