Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(37)

Side by Side Diff: chrome/browser/ui/webui/options/chromeos/cros_language_options_handler.h

Issue 2820823005: Revert of Stop passing raw pointers to base::Value API in c/b/ui (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_UI_WEBUI_OPTIONS_CHROMEOS_CROS_LANGUAGE_OPTIONS_HANDLER_H _ 5 #ifndef CHROME_BROWSER_UI_WEBUI_OPTIONS_CHROMEOS_CROS_LANGUAGE_OPTIONS_HANDLER_H _
6 #define CHROME_BROWSER_UI_WEBUI_OPTIONS_CHROMEOS_CROS_LANGUAGE_OPTIONS_HANDLER_H _ 6 #define CHROME_BROWSER_UI_WEBUI_OPTIONS_CHROMEOS_CROS_LANGUAGE_OPTIONS_HANDLER_H _
7 7
8 #include <memory>
9 #include <string> 8 #include <string>
10 9
11 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
12 #include "base/macros.h" 11 #include "base/macros.h"
13 #include "chrome/browser/ui/webui/options/language_options_handler.h" 12 #include "chrome/browser/ui/webui/options/language_options_handler.h"
14 #include "ui/base/ime/chromeos/component_extension_ime_manager.h" 13 #include "ui/base/ime/chromeos/component_extension_ime_manager.h"
15 #include "ui/base/ime/chromeos/input_method_descriptor.h" 14 #include "ui/base/ime/chromeos/input_method_descriptor.h"
16 15
17 namespace base {
18 class ListValue;
19 }
20
21 namespace chromeos { 16 namespace chromeos {
22 namespace options { 17 namespace options {
23 18
24 // Language options page UI handler for Chrome OS. For non-Chrome OS, 19 // Language options page UI handler for Chrome OS. For non-Chrome OS,
25 // see LanguageOptionsHnadler. 20 // see LanguageOptionsHnadler.
26 class CrosLanguageOptionsHandler 21 class CrosLanguageOptionsHandler
27 : public ::options::LanguageOptionsHandlerCommon { 22 : public ::options::LanguageOptionsHandlerCommon {
28 public: 23 public:
29 CrosLanguageOptionsHandler(); 24 CrosLanguageOptionsHandler();
30 ~CrosLanguageOptionsHandler() override; 25 ~CrosLanguageOptionsHandler() override;
31 26
32 // OptionsPageUIHandler implementation. 27 // OptionsPageUIHandler implementation.
33 void GetLocalizedValues(base::DictionaryValue* localized_strings) override; 28 void GetLocalizedValues(base::DictionaryValue* localized_strings) override;
34 29
35 // DOMMessageHandler implementation. 30 // DOMMessageHandler implementation.
36 void RegisterMessages() override; 31 void RegisterMessages() override;
37 32
38 // The following static methods are public for ease of testing. 33 // The following static methods are public for ease of testing.
39 34
40 // Gets the list of supported input methods. 35 // Gets the list of supported input methods.
41 // The return value will look like: 36 // The return value will look like:
42 // [{'id': 'pinyin', 'displayName': 'Pinyin', 37 // [{'id': 'pinyin', 'displayName': 'Pinyin',
43 // 'languageCodeSet': {'zh-CW': true}}, ...] 38 // 'languageCodeSet': {'zh-CW': true}}, ...]
44 // 39 //
45 // Note that true in languageCodeSet does not mean anything. We just use 40 // Note that true in languageCodeSet does not mean anything. We just use
46 // the dictionary as a set. 41 // the dictionary as a set.
47 static std::unique_ptr<base::ListValue> GetInputMethodList(); 42 static base::ListValue* GetInputMethodList();
48 43
49 // Converts input method descriptors to the list of input methods. 44 // Converts input method descriptors to the list of input methods.
50 // The return value will look like: 45 // The return value will look like:
51 // [{'id': '_ext_ime_nejguenhnsnjnwychcnsdsdjketest', 46 // [{'id': '_ext_ime_nejguenhnsnjnwychcnsdsdjketest',
52 // 'displayName': 'Sample IME'}, ...] 47 // 'displayName': 'Sample IME'}, ...]
53 static std::unique_ptr<base::ListValue> 48 static base::ListValue* ConvertInputMethodDescriptorsToIMEList(
54 ConvertInputMethodDescriptorsToIMEList(
55 const input_method::InputMethodDescriptors& descriptors); 49 const input_method::InputMethodDescriptors& descriptors);
56 50
57 private: 51 private:
58 // LanguageOptionsHandlerCommon implementation. 52 // LanguageOptionsHandlerCommon implementation.
59 void SetApplicationLocale(const std::string& language_code) override; 53 void SetApplicationLocale(const std::string& language_code) override;
60 54
61 // Called when the sign-out button is clicked. 55 // Called when the sign-out button is clicked.
62 void RestartCallback(const base::ListValue* args); 56 void RestartCallback(const base::ListValue* args);
63 57
64 // Called when the input method is disabled. 58 // Called when the input method is disabled.
(...skipping 12 matching lines...) Expand all
77 // |list| of extension IMEs. 71 // |list| of extension IMEs.
78 void AddImeProvider(base::ListValue* list); 72 void AddImeProvider(base::ListValue* list);
79 73
80 DISALLOW_COPY_AND_ASSIGN(CrosLanguageOptionsHandler); 74 DISALLOW_COPY_AND_ASSIGN(CrosLanguageOptionsHandler);
81 }; 75 };
82 76
83 } // namespace options 77 } // namespace options
84 } // namespace chromeos 78 } // namespace chromeos
85 79
86 #endif // CHROME_BROWSER_UI_WEBUI_OPTIONS_CHROMEOS_CROS_LANGUAGE_OPTIONS_HANDLE R_H_ 80 #endif // CHROME_BROWSER_UI_WEBUI_OPTIONS_CHROMEOS_CROS_LANGUAGE_OPTIONS_HANDLE R_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698