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_SYSTEM_LOCALE_LOCALE_NOTIFICATION_CONTROLLER_H_
6#define ASH_SYSTEM_LOCALE_LOCALE_NOTIFICATION_CONTROLLER_H_
7
8#include <string>
9
10#include "ash/system/locale/locale_observer.h"
11#include "base/basictypes.h"
12#include "base/compiler_specific.h"
13
14namespace ash {
15
16// Observes the locale change and creates rich notification for the change.
17class LocaleNotificationController : public LocaleObserver {
18 public:
19  LocaleNotificationController();
20  virtual ~LocaleNotificationController();
21
22 private:
23  // Overridden from LocaleObserver.
24  virtual void OnLocaleChanged(LocaleObserver::Delegate* delegate,
25                               const std::string& cur_locale,
26                               const std::string& from_locale,
27                               const std::string& to_locale) OVERRIDE;
28
29  LocaleObserver::Delegate* delegate_;
30  std::string cur_locale_;
31  std::string from_locale_;
32  std::string to_locale_;
33
34  DISALLOW_COPY_AND_ASSIGN(LocaleNotificationController);
35};
36
37}  // namespace ash
38
39#endif  // ASH_SYSTEM_LOCALE_LOCALE_NOTIFICATION_CONTROLLER_H_
40