| Index: ui/gfx/compositor/test/test_compositor_host_mac.mm
|
| diff --git a/ui/gfx/compositor/test/test_compositor_host_mac.mm b/ui/gfx/compositor/test/test_compositor_host_mac.mm
|
| deleted file mode 100644
|
| index 49d9da22e3add1f9d9a160cf8a82ff2bbbfa3acd..0000000000000000000000000000000000000000
|
| --- a/ui/gfx/compositor/test/test_compositor_host_mac.mm
|
| +++ /dev/null
|
| @@ -1,153 +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.
|
| -
|
| -#include "ui/gfx/compositor/test/test_compositor_host.h"
|
| -
|
| -#import <AppKit/NSApplication.h>
|
| -#import <AppKit/NSOpenGL.h>
|
| -#import <AppKit/NSView.h>
|
| -#import <AppKit/NSWindow.h>
|
| -#import <Foundation/NSAutoreleasePool.h>
|
| -
|
| -#include "base/compiler_specific.h"
|
| -#include "base/memory/scoped_nsobject.h"
|
| -#include "base/memory/scoped_ptr.h"
|
| -#include "ui/gfx/compositor/compositor.h"
|
| -#include "ui/gfx/rect.h"
|
| -
|
| -// AcceleratedTestView provides an NSView class that delegates drawing to a
|
| -// ui::Compositor delegate, setting up the NSOpenGLContext as required.
|
| -@interface AcceleratedTestView : NSView {
|
| - ui::Compositor* compositor_;
|
| -}
|
| -// Designated initializer.
|
| --(id)init;
|
| --(void)setCompositor:(ui::Compositor*)compositor;
|
| -@end
|
| -
|
| -@implementation AcceleratedTestView
|
| --(id)init {
|
| - // The frame will be resized when reparented into the window's view hierarchy.
|
| - self = [super initWithFrame:NSZeroRect];
|
| - return self;
|
| -}
|
| -
|
| --(void)setCompositor:(ui::Compositor*)compositor {
|
| - compositor_ = compositor;
|
| -}
|
| -
|
| -- (void)drawRect:(NSRect)rect {
|
| - DCHECK(compositor_) << "Drawing with no compositor set.";
|
| - compositor_->Draw(false);
|
| -}
|
| -@end
|
| -
|
| -namespace ui {
|
| -
|
| -// Tests that use Objective-C memory semantics need to have a top-level
|
| -// NSAutoreleasePool set up and initialized prior to execution and drained upon
|
| -// exit. The tests will leak otherwise.
|
| -class FoundationHost {
|
| - protected:
|
| - FoundationHost() {
|
| - pool_ = [[NSAutoreleasePool alloc] init];
|
| - }
|
| - virtual ~FoundationHost() {
|
| - [pool_ drain];
|
| - }
|
| -
|
| - private:
|
| - NSAutoreleasePool* pool_;
|
| - DISALLOW_COPY_AND_ASSIGN(FoundationHost);
|
| -};
|
| -
|
| -// Tests that use the AppKit framework need to have the NSApplication
|
| -// initialized prior to doing anything with display objects such as windows,
|
| -// views, or controls.
|
| -class AppKitHost : public FoundationHost {
|
| - protected:
|
| - AppKitHost() {
|
| - [NSApplication sharedApplication];
|
| - }
|
| - virtual ~AppKitHost() {
|
| - }
|
| - private:
|
| - DISALLOW_COPY_AND_ASSIGN(AppKitHost);
|
| -};
|
| -
|
| -// TestCompositorHostMac provides a window surface and a coordinated compositor
|
| -// for use in the compositor unit tests.
|
| -class TestCompositorHostMac : public TestCompositorHost,
|
| - public CompositorDelegate,
|
| - public AppKitHost {
|
| - public:
|
| - TestCompositorHostMac(const gfx::Rect& bounds);
|
| - virtual ~TestCompositorHostMac();
|
| -
|
| - private:
|
| - // TestCompositorHost:
|
| - virtual void Show() OVERRIDE;
|
| - virtual ui::Compositor* GetCompositor() OVERRIDE;
|
| -
|
| - // CompositorDelegate:
|
| - virtual void ScheduleDraw() OVERRIDE;
|
| -
|
| - gfx::Rect bounds_;
|
| - scoped_ptr<ui::Compositor> compositor_;
|
| -
|
| - // Owned. Released when window is closed.
|
| - NSWindow* window_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(TestCompositorHostMac);
|
| -};
|
| -
|
| -TestCompositorHostMac::TestCompositorHostMac(const gfx::Rect& bounds)
|
| - : bounds_(bounds), window_(nil) {
|
| -}
|
| -
|
| -TestCompositorHostMac::~TestCompositorHostMac() {
|
| - // Release reference to |compositor_|. Important because the |compositor_|
|
| - // holds |this| as its delegate, so that reference must be removed here.
|
| - [[window_ contentView] setCompositor:NULL];
|
| - [window_ setContentView:nil];
|
| -
|
| - [window_ orderOut:nil];
|
| - [window_ close];
|
| -}
|
| -
|
| -void TestCompositorHostMac::Show() {
|
| - DCHECK(!window_);
|
| - window_ = [[NSWindow alloc]
|
| - initWithContentRect:NSMakeRect(bounds_.x(),
|
| - bounds_.y(),
|
| - bounds_.width(),
|
| - bounds_.height())
|
| - styleMask:NSBorderlessWindowMask
|
| - backing:NSBackingStoreBuffered
|
| - defer:NO];
|
| - scoped_nsobject<AcceleratedTestView> view([[AcceleratedTestView alloc] init]);
|
| - compositor_.reset(new ui::Compositor(this, view, bounds_.size()));
|
| - [view setCompositor:compositor_.get()];
|
| - [window_ setContentView:view];
|
| - [window_ orderFront:nil];
|
| -}
|
| -
|
| -ui::Compositor* TestCompositorHostMac::GetCompositor() {
|
| - return compositor_.get();
|
| -}
|
| -
|
| -void TestCompositorHostMac::ScheduleDraw() {
|
| - if (!compositor_.get())
|
| - return;
|
| -
|
| - // Force display now.
|
| - [window_ display];
|
| -}
|
| -
|
| -// static
|
| -TestCompositorHost* TestCompositorHost::Create(const gfx::Rect& bounds) {
|
| - return new TestCompositorHostMac(bounds);
|
| -}
|
| -
|
| -} // namespace ui
|
|
|