blob: a22fc5df808437e5decc2a016bb322141a59a5b2 [file] [log] [blame]
// Copyright 2015 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 "sky/shell/platform_view.h"
#include "base/bind.h"
#include "base/location.h"
#include "sky/shell/shell.h"
#include "base/single_thread_task_runner.h"
namespace sky {
namespace shell {
PlatformView::Config::Config() {
}
PlatformView::Config::~Config() {
}
PlatformView::PlatformView(const PlatformView::Config& config)
: config_(config), window_(0) {
}
PlatformView::~PlatformView() {
}
void PlatformView::ConnectToEngine(
mojo::InterfaceRequest<SkyEngine> request) {
config_.ui_task_runner->PostTask(
FROM_HERE, base::Bind(&UIDelegate::ConnectToEngine,
config_.ui_delegate, base::Passed(&request)));
}
void PlatformView::SurfaceWasCreated() {
config_.ui_task_runner->PostTask(
FROM_HERE, base::Bind(&UIDelegate::OnAcceleratedWidgetAvailable,
config_.ui_delegate, window_));
}
void PlatformView::SurfaceWasDestroyed() {
config_.ui_task_runner->PostTask(
FROM_HERE,
base::Bind(&UIDelegate::OnOutputSurfaceDestroyed, config_.ui_delegate));
}
} // namespace shell
} // namespace sky