Index: chrome/browser/views/tabs/native_view_photobooth_win.cc |
=================================================================== |
--- chrome/browser/views/tabs/native_view_photobooth_win.cc (revision 16306) |
+++ chrome/browser/views/tabs/native_view_photobooth_win.cc (working copy) |
@@ -2,10 +2,11 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
+#include "chrome/browser/views/tabs/native_view_photobooth_win.h" |
+ |
#include "app/gfx/canvas.h" |
#include "base/gfx/point.h" |
#include "chrome/browser/tab_contents/tab_contents.h" |
-#include "chrome/browser/views/tabs/hwnd_photobooth.h" |
#include "third_party/skia/include/core/SkBitmap.h" |
#include "views/widget/widget_win.h" |
@@ -38,23 +39,29 @@ |
} |
/////////////////////////////////////////////////////////////////////////////// |
-// HWNDPhotobooth, public: |
+// NativeViewPhotoboothWin, public: |
-HWNDPhotobooth::HWNDPhotobooth(HWND initial_hwnd) |
+// static |
+NativeViewPhotobooth* NativeViewPhotobooth::Create( |
+ gfx::NativeView initial_view) { |
+ return new NativeViewPhotoboothWin(initial_view); |
+} |
+ |
+NativeViewPhotoboothWin::NativeViewPhotoboothWin(HWND initial_hwnd) |
: capture_window_(NULL), |
current_hwnd_(initial_hwnd) { |
DCHECK(IsWindow(current_hwnd_)); |
CreateCaptureWindow(initial_hwnd); |
} |
-HWNDPhotobooth::~HWNDPhotobooth() { |
+NativeViewPhotoboothWin::~NativeViewPhotoboothWin() { |
// Detach the attached HWND. The creator of the photo-booth is responsible |
// for destroying it. |
- ReplaceHWND(NULL); |
+ Replace(NULL); |
capture_window_->Close(); |
} |
-void HWNDPhotobooth::ReplaceHWND(HWND new_hwnd) { |
+void NativeViewPhotoboothWin::Replace(HWND new_hwnd) { |
if (IsWindow(current_hwnd_) && |
GetParent(current_hwnd_) == capture_window_->GetNativeView()) { |
// We need to hide the window too, so it doesn't show up in the TaskBar or |
@@ -77,14 +84,14 @@ |
} |
} |
-void HWNDPhotobooth::PaintScreenshotIntoCanvas( |
+void NativeViewPhotoboothWin::PaintScreenshotIntoCanvas( |
gfx::Canvas* canvas, |
const gfx::Rect& target_bounds) { |
// Our contained window may have been re-parented. Make sure it belongs to |
- // us until someone calls ReplaceHWND(NULL). |
+ // us until someone calls Replace(NULL). |
if (IsWindow(current_hwnd_) && |
GetParent(current_hwnd_) != capture_window_->GetNativeView()) { |
- ReplaceHWND(current_hwnd_); |
+ Replace(current_hwnd_); |
} |
// We compel the contained HWND to paint now, synchronously. We do this to |
@@ -111,9 +118,9 @@ |
} |
/////////////////////////////////////////////////////////////////////////////// |
-// HWNDPhotobooth, private: |
+// NativeViewPhotoboothWin, private: |
-void HWNDPhotobooth::CreateCaptureWindow(HWND initial_hwnd) { |
+void NativeViewPhotoboothWin::CreateCaptureWindow(HWND initial_hwnd) { |
// Snapshotting a HWND is tricky - if the HWND is clipped (e.g. positioned |
// partially off-screen) then just blitting from the HWND' DC to the capture |
// bitmap would be incorrect, since the capture bitmap would show only the |
@@ -155,5 +162,5 @@ |
SetLayeredWindowAttributes( |
capture_window_->GetNativeView(), RGB(0xFF, 0xFF, 0xFF), 0xFF, LWA_ALPHA); |
- ReplaceHWND(initial_hwnd); |
+ Replace(initial_hwnd); |
} |