blob: 6c6a043a61b0b9244b995d9d0579fc4beb84ccec [file] [log] [blame]
// 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.
#ifndef ASH_SHELL_SHELL_DELEGATE_IMPL_H_
#define ASH_SHELL_SHELL_DELEGATE_IMPL_H_
#include <memory>
#include <string>
#include "ash/shell_delegate.h"
#include "base/macros.h"
namespace ash {
namespace shell {
class ShellDelegateImpl : public ShellDelegate {
public:
ShellDelegateImpl();
~ShellDelegateImpl() override;
// ShellDelegate:
bool CanShowWindowForUser(const aura::Window* window) const override;
std::unique_ptr<ScreenshotDelegate> CreateScreenshotDelegate() override;
AccessibilityDelegate* CreateAccessibilityDelegate() override;
std::unique_ptr<BackGestureContextualNudgeDelegate>
CreateBackGestureContextualNudgeDelegate(
BackGestureContextualNudgeController* controller) override;
bool CanGoBack(gfx::NativeWindow window) const override;
void BindNavigableContentsFactory(
mojo::PendingReceiver<content::mojom::NavigableContentsFactory> receiver)
override;
void BindMultiDeviceSetup(
mojo::PendingReceiver<
chromeos::multidevice_setup::mojom::MultiDeviceSetup> receiver)
override;
private:
DISALLOW_COPY_AND_ASSIGN(ShellDelegateImpl);
};
} // namespace shell
} // namespace ash
#endif // ASH_SHELL_SHELL_DELEGATE_IMPL_H_