OLD | NEW |
(Empty) | |
| 1 // Copyright (c) 2010 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 #include "chrome/browser/extensions/extension_accessibility_api_constants.h" |
| 6 #include "chrome/browser/profile.h" |
| 7 #include "chrome/common/accessibility_events.h" |
| 8 #include "chrome/common/notification_service.h" |
| 9 #include "chrome/common/notification_type.h" |
| 10 |
| 11 namespace keys = extension_accessibility_api_constants; |
| 12 |
| 13 void SendAccessibilityNotification( |
| 14 NotificationType type, AccessibilityControlInfo* info) { |
| 15 Profile *profile = info->profile(); |
| 16 if (profile->ShouldSendAccessibilityEvents()) { |
| 17 NotificationService::current()->Notify( |
| 18 type, |
| 19 Source<Profile>(profile), |
| 20 Details<AccessibilityControlInfo>(info)); |
| 21 } |
| 22 } |
| 23 |
| 24 void AccessibilityControlInfo::SerializeToDict(DictionaryValue *dict) const { |
| 25 dict->SetString(keys::kNameKey, name_); |
| 26 } |
| 27 |
| 28 void AccessibilityWindowInfo::SerializeToDict(DictionaryValue *dict) const { |
| 29 AccessibilityControlInfo::SerializeToDict(dict); |
| 30 dict->SetString(keys::kTypeKey, keys::kTypeWindow); |
| 31 } |
| 32 |
| 33 void AccessibilityButtonInfo::SerializeToDict(DictionaryValue *dict) const { |
| 34 AccessibilityControlInfo::SerializeToDict(dict); |
| 35 dict->SetString(keys::kTypeKey, keys::kTypeButton); |
| 36 } |
| 37 |
| 38 void AccessibilityLinkInfo::SerializeToDict(DictionaryValue *dict) const { |
| 39 AccessibilityControlInfo::SerializeToDict(dict); |
| 40 dict->SetString(keys::kTypeKey, keys::kTypeLink); |
| 41 } |
| 42 |
| 43 void AccessibilityRadioButtonInfo::SerializeToDict( |
| 44 DictionaryValue *dict) const { |
| 45 AccessibilityControlInfo::SerializeToDict(dict); |
| 46 dict->SetString(keys::kTypeKey, keys::kTypeRadioButton); |
| 47 dict->SetBoolean(keys::kCheckedKey, checked_); |
| 48 dict->SetInteger(keys::kItemIndexKey, item_index_); |
| 49 dict->SetInteger(keys::kItemCountKey, item_count_); |
| 50 } |
| 51 |
| 52 void AccessibilityCheckboxInfo::SerializeToDict(DictionaryValue *dict) const { |
| 53 AccessibilityControlInfo::SerializeToDict(dict); |
| 54 dict->SetString(keys::kTypeKey, keys::kTypeCheckbox); |
| 55 dict->SetBoolean(keys::kCheckedKey, checked_); |
| 56 } |
| 57 |
| 58 void AccessibilityTabInfo::SerializeToDict(DictionaryValue *dict) const { |
| 59 AccessibilityControlInfo::SerializeToDict(dict); |
| 60 dict->SetString(keys::kTypeKey, keys::kTypeTab); |
| 61 dict->SetInteger(keys::kItemIndexKey, tab_index_); |
| 62 dict->SetInteger(keys::kItemCountKey, tab_count_); |
| 63 } |
| 64 |
| 65 void AccessibilityComboBoxInfo::SerializeToDict(DictionaryValue *dict) const { |
| 66 AccessibilityControlInfo::SerializeToDict(dict); |
| 67 dict->SetString(keys::kTypeKey, keys::kTypeComboBox); |
| 68 dict->SetString(keys::kValueKey, value_); |
| 69 dict->SetInteger(keys::kItemIndexKey, item_index_); |
| 70 dict->SetInteger(keys::kItemCountKey, item_count_); |
| 71 } |
| 72 |
| 73 void AccessibilityTextBoxInfo::SerializeToDict(DictionaryValue *dict) const { |
| 74 AccessibilityControlInfo::SerializeToDict(dict); |
| 75 dict->SetString(keys::kTypeKey, keys::kTypeTextBox); |
| 76 dict->SetString(keys::kValueKey, value_); |
| 77 dict->SetBoolean(keys::kPasswordKey, password_); |
| 78 dict->SetInteger(keys::kSelectionStartKey, selection_start_); |
| 79 dict->SetInteger(keys::kSelectionEndKey, selection_end_); |
| 80 } |
OLD | NEW |