| Index: aura/desktop_host_win.cc
|
| diff --git a/aura/desktop_host_win.cc b/aura/desktop_host_win.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..70489ea902b64da9a3ad4dec284571e40f1266be
|
| --- /dev/null
|
| +++ b/aura/desktop_host_win.cc
|
| @@ -0,0 +1,54 @@
|
| +// Copyright (c) 2011 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 "aura/desktop_host_win.h"
|
| +
|
| +#include "aura/desktop.h"
|
| +#include "base/message_loop.h"
|
| +
|
| +namespace aura {
|
| +
|
| +// static
|
| +DesktopHost* DesktopHost::Create(const gfx::Rect& bounds) {
|
| + return new DesktopHostWin(bounds);
|
| +}
|
| +
|
| +DesktopHostWin::DesktopHostWin(const gfx::Rect& bounds) : desktop_(NULL) {
|
| + Init(NULL, bounds);
|
| +}
|
| +
|
| +DesktopHostWin::~DesktopHostWin() {
|
| + DestroyWindow(hwnd());
|
| +}
|
| +
|
| +void DesktopHostWin::SetDesktop(Desktop* desktop) {
|
| + desktop_ = desktop;
|
| +}
|
| +
|
| +gfx::AcceleratedWidget DesktopHostWin::GetAcceleratedWidget() {
|
| + return hwnd();
|
| +}
|
| +
|
| +void DesktopHostWin::Show() {
|
| + ShowWindow(hwnd(), SW_SHOWNORMAL);
|
| +}
|
| +
|
| +gfx::Size DesktopHostWin::GetSize() {
|
| + RECT r;
|
| + GetClientRect(hwnd(), &r);
|
| + return gfx::Rect(r).size();
|
| +}
|
| +
|
| +void DesktopHostWin::OnClose() {
|
| + // TODO: this obviously shouldn't be here.
|
| + MessageLoopForUI::current()->Quit();
|
| +}
|
| +
|
| +void DesktopHostWin::OnPaint(HDC dc) {
|
| + if (desktop_)
|
| + desktop_->Draw();
|
| + ValidateRect(hwnd(), NULL);
|
| +}
|
| +
|
| +} // namespace aura
|
|
|