| Index: ui/gfx/gl/gl_context_mac.cc
 | 
| ===================================================================
 | 
| --- ui/gfx/gl/gl_context_mac.cc	(revision 104937)
 | 
| +++ ui/gfx/gl/gl_context_mac.cc	(working copy)
 | 
| @@ -4,6 +4,7 @@
 | 
|  
 | 
|  #include "base/basictypes.h"
 | 
|  #include "base/logging.h"
 | 
| +#include "base/mac/mac_util.h"
 | 
|  #include "base/memory/scoped_ptr.h"
 | 
|  #include "third_party/mesa/MesaLib/include/GL/osmesa.h"
 | 
|  #include "ui/gfx/gl/gl_bindings.h"
 | 
| @@ -20,18 +21,19 @@
 | 
|  
 | 
|  scoped_refptr<GLContext> GLContext::CreateGLContext(
 | 
|      GLShareGroup* share_group,
 | 
| -    GLSurface* compatible_surface) {
 | 
| +    GLSurface* compatible_surface,
 | 
| +    GpuPreference gpu_preference) {
 | 
|    switch (GetGLImplementation()) {
 | 
|      case kGLImplementationDesktopGL: {
 | 
|        scoped_refptr<GLContext> context(new GLContextCGL(share_group));
 | 
| -      if (!context->Initialize(compatible_surface))
 | 
| +      if (!context->Initialize(compatible_surface, gpu_preference))
 | 
|          return NULL;
 | 
|  
 | 
|        return context;
 | 
|      }
 | 
|      case kGLImplementationOSMesaGL: {
 | 
|        scoped_refptr<GLContext> context(new GLContextOSMesa(share_group));
 | 
| -      if (!context->Initialize(compatible_surface))
 | 
| +      if (!context->Initialize(compatible_surface, gpu_preference))
 | 
|          return NULL;
 | 
|  
 | 
|        return context;
 | 
| @@ -44,4 +46,10 @@
 | 
|    }
 | 
|  }
 | 
|  
 | 
| +bool GLContext::SupportsDualGpus() {
 | 
| +  // TODO(kbr): the precision of this query could be improved, in
 | 
| +  // particular to detect single-GPU systems.
 | 
| +  return base::mac::IsOSLionOrLater();
 | 
| +}
 | 
| +
 | 
|  }  // namespace gfx
 | 
| 
 |