| Index: chrome/browser/cocoa/extension_view_mac.h
|
| diff --git a/chrome/browser/cocoa/extension_view_mac.h b/chrome/browser/cocoa/extension_view_mac.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..e358d1bdb3fb320b2a68f729e7b044b82c71b12d
|
| --- /dev/null
|
| +++ b/chrome/browser/cocoa/extension_view_mac.h
|
| @@ -0,0 +1,65 @@
|
| +// Copyright (c) 2009 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 CHROME_BROWSER_COCOA_EXTENSION_VIEW_MAC_H_
|
| +#define CHROME_BROWSER_COCOA_EXTENSION_VIEW_MAC_H_
|
| +
|
| +#include "base/basictypes.h"
|
| +#include "base/gfx/native_widget_types.h"
|
| +
|
| +class Browser;
|
| +class ExtensionHost;
|
| +class RenderViewHost;
|
| +class RenderWidgetHostViewMac;
|
| +class SkBitmap;
|
| +
|
| +// This class represents extension views. An extension view internally contains
|
| +// a bridge to an extension process, which draws to the extension view's
|
| +// native view object through IPC.
|
| +class ExtensionViewMac {
|
| + public:
|
| + ExtensionViewMac(ExtensionHost* extension_host, Browser* browser);
|
| + ~ExtensionViewMac();
|
| +
|
| + // Starts the extension process and creates the native view. You must call
|
| + // this method before calling any of this class's other methods.
|
| + void Init();
|
| +
|
| + // Returns the extension's native view.
|
| + gfx::NativeView native_view();
|
| +
|
| + // Returns the browser the extension belongs to.
|
| + Browser* browser() const { return browser_; }
|
| +
|
| + // Does this extension live as a toolstrip in an extension shelf?
|
| + bool is_toolstrip() const { return is_toolstrip_; }
|
| + void set_is_toolstrip(bool is_toolstrip) { is_toolstrip_ = is_toolstrip; }
|
| +
|
| + // Sets the extensions's background image.
|
| + void SetBackground(const SkBitmap& background);
|
| +
|
| + // Method for the ExtensionHost to notify us about the correct width for
|
| + // extension contents.
|
| + void UpdatePreferredWidth(int pref_width);
|
| +
|
| + private:
|
| + RenderViewHost* render_view_host() const;
|
| +
|
| + void CreateWidgetHostView();
|
| +
|
| + // True if the contents are being displayed inside the extension shelf.
|
| + bool is_toolstrip_;
|
| +
|
| + Browser* browser_; // weak
|
| +
|
| + ExtensionHost* extension_host_; // weak
|
| +
|
| + // Created by us, but owned by its |native_view()|. We |release| the
|
| + // rwhv's native view in our destructor, effectively freeing this.
|
| + RenderWidgetHostViewMac* render_widget_host_view_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(ExtensionViewMac);
|
| +};
|
| +
|
| +#endif // CHROME_BROWSER_COCOA_EXTENSION_VIEW_MAC_H_
|
|
|