| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 #include "chrome/common/extensions/api/spellcheck/spellcheck_handler.h" | 5 #include "chrome/common/extensions/api/spellcheck/spellcheck_handler.h" |
| 6 | 6 |
| 7 #include <memory> |
| 8 |
| 7 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
| 8 #include "extensions/common/manifest_constants.h" | 10 #include "extensions/common/manifest_constants.h" |
| 9 | 11 |
| 10 namespace extensions { | 12 namespace extensions { |
| 11 | 13 |
| 12 namespace keys = manifest_keys; | 14 namespace keys = manifest_keys; |
| 13 namespace errors = manifest_errors; | 15 namespace errors = manifest_errors; |
| 14 | 16 |
| 15 SpellcheckDictionaryInfo::SpellcheckDictionaryInfo() { | 17 SpellcheckDictionaryInfo::SpellcheckDictionaryInfo() { |
| 16 } | 18 } |
| 17 | 19 |
| 18 SpellcheckDictionaryInfo::~SpellcheckDictionaryInfo() { | 20 SpellcheckDictionaryInfo::~SpellcheckDictionaryInfo() { |
| 19 } | 21 } |
| 20 | 22 |
| 21 SpellcheckHandler::SpellcheckHandler() { | 23 SpellcheckHandler::SpellcheckHandler() { |
| 22 } | 24 } |
| 23 | 25 |
| 24 SpellcheckHandler::~SpellcheckHandler() { | 26 SpellcheckHandler::~SpellcheckHandler() { |
| 25 } | 27 } |
| 26 | 28 |
| 27 bool SpellcheckHandler::Parse(Extension* extension, base::string16* error) { | 29 bool SpellcheckHandler::Parse(Extension* extension, base::string16* error) { |
| 28 const base::DictionaryValue* spellcheck_value = NULL; | 30 const base::DictionaryValue* spellcheck_value = NULL; |
| 29 if (!extension->manifest()->GetDictionary(keys::kSpellcheck, | 31 if (!extension->manifest()->GetDictionary(keys::kSpellcheck, |
| 30 &spellcheck_value)) { | 32 &spellcheck_value)) { |
| 31 *error = base::ASCIIToUTF16(errors::kInvalidSpellcheck); | 33 *error = base::ASCIIToUTF16(errors::kInvalidSpellcheck); |
| 32 return false; | 34 return false; |
| 33 } | 35 } |
| 34 scoped_ptr<SpellcheckDictionaryInfo> spellcheck_info( | 36 std::unique_ptr<SpellcheckDictionaryInfo> spellcheck_info( |
| 35 new SpellcheckDictionaryInfo); | 37 new SpellcheckDictionaryInfo); |
| 36 if (!spellcheck_value->HasKey(keys::kSpellcheckDictionaryLanguage) || | 38 if (!spellcheck_value->HasKey(keys::kSpellcheckDictionaryLanguage) || |
| 37 !spellcheck_value->GetString(keys::kSpellcheckDictionaryLanguage, | 39 !spellcheck_value->GetString(keys::kSpellcheckDictionaryLanguage, |
| 38 &spellcheck_info->language)) { | 40 &spellcheck_info->language)) { |
| 39 *error = base::ASCIIToUTF16(errors::kInvalidSpellcheckDictionaryLanguage); | 41 *error = base::ASCIIToUTF16(errors::kInvalidSpellcheckDictionaryLanguage); |
| 40 return false; | 42 return false; |
| 41 } | 43 } |
| 42 if (!spellcheck_value->HasKey(keys::kSpellcheckDictionaryLocale) || | 44 if (!spellcheck_value->HasKey(keys::kSpellcheckDictionaryLocale) || |
| 43 !spellcheck_value->GetString(keys::kSpellcheckDictionaryLocale, | 45 !spellcheck_value->GetString(keys::kSpellcheckDictionaryLocale, |
| 44 &spellcheck_info->locale)) { | 46 &spellcheck_info->locale)) { |
| (...skipping 14 matching lines...) Expand all Loading... |
| 59 } | 61 } |
| 60 extension->SetManifestData(keys::kSpellcheck, spellcheck_info.release()); | 62 extension->SetManifestData(keys::kSpellcheck, spellcheck_info.release()); |
| 61 return true; | 63 return true; |
| 62 } | 64 } |
| 63 | 65 |
| 64 const std::vector<std::string> SpellcheckHandler::Keys() const { | 66 const std::vector<std::string> SpellcheckHandler::Keys() const { |
| 65 return SingleKey(keys::kSpellcheck); | 67 return SingleKey(keys::kSpellcheck); |
| 66 } | 68 } |
| 67 | 69 |
| 68 } // namespace extensions | 70 } // namespace extensions |
| OLD | NEW |