display_error_observer_chromeos.h revision c5cede9ae108bb15f6b7a8aea21c7e1fefa2834c
1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef ASH_DISPLAY_DISPLAY_ERROR_OBSERVER_CHROMEOS_H_
6#define ASH_DISPLAY_DISPLAY_ERROR_OBSERVER_CHROMEOS_H_
7
8#include "ash/ash_export.h"
9#include "base/compiler_specific.h"
10#include "base/strings/string16.h"
11#include "ui/display/chromeos/display_configurator.h"
12
13namespace ash {
14
15// The class to observe the output failures and shows the error dialog when
16// necessary.
17class ASH_EXPORT DisplayErrorObserver
18    : public ui::DisplayConfigurator::Observer {
19 public:
20  DisplayErrorObserver();
21  virtual ~DisplayErrorObserver();
22
23  // ui::DisplayConfigurator::Observer overrides:
24  virtual void OnDisplayModeChangeFailed(
25      ui::MultipleDisplayState failed_new_state) OVERRIDE;
26
27 private:
28  friend class DisplayErrorObserverTest;
29
30  base::string16 GetTitleOfDisplayErrorNotificationForTest();
31
32  DISALLOW_COPY_AND_ASSIGN(DisplayErrorObserver);
33};
34
35}  // namespace ash
36
37#endif  // ASH_DISPLAY_DISPLAY_ERROR_OBSERVER_CHROMEOS_H_
38