| Index: ui/accelerated_widget_mac/io_surface_texture.h | 
| diff --git a/ui/accelerated_widget_mac/io_surface_texture.h b/ui/accelerated_widget_mac/io_surface_texture.h | 
| deleted file mode 100644 | 
| index d971b584f3434f1f75cd5e3e0c1fcba0a1ce4f8d..0000000000000000000000000000000000000000 | 
| --- a/ui/accelerated_widget_mac/io_surface_texture.h | 
| +++ /dev/null | 
| @@ -1,132 +0,0 @@ | 
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
| -// Use of this source code is governed by a BSD-style license that can be | 
| -// found in the LICENSE file. | 
| - | 
| -#ifndef UI_ACCELERATED_WIDGET_MAC_IO_SURFACE_TEXTURE_H_ | 
| -#define UI_ACCELERATED_WIDGET_MAC_IO_SURFACE_TEXTURE_H_ | 
| - | 
| -#include <deque> | 
| -#include <list> | 
| -#include <vector> | 
| - | 
| -#import <Cocoa/Cocoa.h> | 
| -#include <IOSurface/IOSurface.h> | 
| -#include <QuartzCore/QuartzCore.h> | 
| - | 
| -#include "base/callback.h" | 
| -#include "base/lazy_instance.h" | 
| -#include "base/mac/scoped_cftyperef.h" | 
| -#include "base/memory/ref_counted.h" | 
| -#include "base/memory/scoped_ptr.h" | 
| -#include "base/time/time.h" | 
| -#include "ui/gfx/geometry/size.h" | 
| -#include "ui/gfx/native_widget_types.h" | 
| - | 
| -class SkBitmap; | 
| - | 
| -namespace gfx { | 
| -class Rect; | 
| -} | 
| - | 
| -namespace ui { | 
| - | 
| -class IOSurfaceContext; | 
| -class RenderWidgetHostViewFrameSubscriber; | 
| -class RenderWidgetHostViewMac; | 
| - | 
| -// This class manages an OpenGL context and IOSurfaceTexture for the accelerated | 
| -// compositing code path. The GL context is attached to | 
| -// RenderWidgetHostViewCocoa for blitting the IOSurfaceTexture. | 
| -class IOSurfaceTexture | 
| -    : public base::RefCounted<IOSurfaceTexture> { | 
| - public: | 
| -  static scoped_refptr<IOSurfaceTexture> Create( | 
| -      bool needs_gl_finish_workaround, | 
| -      bool use_ns_apis); | 
| - | 
| -  // Returns true if there is no need to call SetIOSurface with the provided | 
| -  // values. | 
| -  bool IsUpToDate( | 
| -      IOSurfaceID io_surface_id, const gfx::Size& pixel_size) const; | 
| - | 
| -  // Set IOSurfaceTexture that will be drawn on the next NSView drawRect. | 
| -  bool SetIOSurface( | 
| -      IOSurfaceID io_surface_id, | 
| -      const gfx::Size& pixel_size) WARN_UNUSED_RESULT; | 
| - | 
| -  // Blit the IOSurface to the rectangle specified by |window_rect| in DIPs, | 
| -  // with the origin in the lower left corner. If the window rect's size is | 
| -  // larger than the IOSurface, the remaining right and bottom edges will be | 
| -  // white. |window_scale_factor| is 1 in normal views, 2 in HiDPI views. | 
| -  bool DrawIOSurface() WARN_UNUSED_RESULT; | 
| -  bool DrawIOSurfaceWithDamageRect(gfx::Rect damage_rect) WARN_UNUSED_RESULT; | 
| - | 
| -  // Returns true if the offscreen context used by this surface has been | 
| -  // poisoned. | 
| -  bool HasBeenPoisoned() const; | 
| - | 
| - private: | 
| -  friend class base::RefCounted<IOSurfaceTexture>; | 
| - | 
| -  IOSurfaceTexture( | 
| -      const scoped_refptr<IOSurfaceContext>& context, | 
| -      bool use_ns_apis, | 
| -      bool needs_gl_finish_workaround); | 
| -  ~IOSurfaceTexture(); | 
| - | 
| -  // Unref the IOSurfaceTexture and delete the associated GL texture. If the GPU | 
| -  // process is no longer referencing it, this will delete the IOSurface. | 
| -  void ReleaseIOSurfaceAndTexture(); | 
| - | 
| -  // Check for GL errors and store the result in error_. Only return new | 
| -  // errors | 
| -  GLenum GetAndSaveGLError(); | 
| - | 
| -  // Offscreen context used for all operations other than drawing to the | 
| -  // screen. This is in the same share group as the contexts used for | 
| -  // drawing, and is the same for all IOSurfaces in all windows. | 
| -  scoped_refptr<IOSurfaceContext> offscreen_context_; | 
| - | 
| -  // The IOSurface and its non-rounded size. | 
| -  base::ScopedCFTypeRef<IOSurfaceRef> io_surface_; | 
| -  gfx::Size pixel_size_; | 
| - | 
| -  // The "live" OpenGL texture referring to this IOSurfaceRef. Note | 
| -  // that per the CGLTexImageIOSurface2D API we do not need to | 
| -  // explicitly update this texture's contents once created. All we | 
| -  // need to do is ensure it is re-bound before attempting to draw | 
| -  // with it. | 
| -  GLuint texture_; | 
| - | 
| -  // Error saved by GetAndSaveGLError | 
| -  GLint gl_error_; | 
| - | 
| -  // Aggressive IOSurface eviction logic. When using CoreAnimation, IOSurfaces | 
| -  // are used only transiently to transfer from the GPU process to the browser | 
| -  // process. Once the IOSurface has been drawn to its CALayer, the CALayer | 
| -  // will not need updating again until its view is hidden and re-shown. | 
| -  // Aggressively evict surfaces when more than 8 (the number allowed by the | 
| -  // memory manager for fast tab switching) are allocated. | 
| -  enum { | 
| -    kMaximumUnevictedSurfaces = 8, | 
| -  }; | 
| -  typedef std::list<IOSurfaceTexture*> EvictionQueue; | 
| -  void EvictionMarkUpdated(); | 
| -  void EvictionMarkEvicted(); | 
| -  EvictionQueue::iterator eviction_queue_iterator_; | 
| -  bool eviction_has_been_drawn_since_updated_; | 
| - | 
| -  const bool needs_gl_finish_workaround_; | 
| - | 
| -  // Set if this is for access through NS APIs. | 
| -  const bool using_ns_apis_; | 
| - | 
| -  static void EvictionScheduleDoEvict(); | 
| -  static void EvictionDoEvict(); | 
| -  static base::LazyInstance<EvictionQueue> eviction_queue_; | 
| -  static bool eviction_scheduled_; | 
| -}; | 
| - | 
| -}  // namespace ui | 
| - | 
| -#endif  // UI_ACCELERATED_WIDGET_MAC_IO_SURFACE_TEXTURE_H_ | 
|  |