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

Side by Side Diff: chrome/renderer/extensions/automation_internal_custom_bindings.h

Issue 2770403002: [Extensions Bindings] Remove ScriptContext::DispatchEvent (Closed)
Patch Set: Created 3 years, 9 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
« no previous file with comments | « no previous file | chrome/renderer/extensions/automation_internal_custom_bindings.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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_RENDERER_EXTENSIONS_AUTOMATION_INTERNAL_CUSTOM_BINDINGS_H_ 5 #ifndef CHROME_RENDERER_EXTENSIONS_AUTOMATION_INTERNAL_CUSTOM_BINDINGS_H_
6 #define CHROME_RENDERER_EXTENSIONS_AUTOMATION_INTERNAL_CUSTOM_BINDINGS_H_ 6 #define CHROME_RENDERER_EXTENSIONS_AUTOMATION_INTERNAL_CUSTOM_BINDINGS_H_
7 7
8 #include "base/compiler_specific.h" 8 #include "base/compiler_specific.h"
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "chrome/common/extensions/api/automation.h" 10 #include "chrome/common/extensions/api/automation.h"
11 #include "extensions/renderer/object_backed_native_handler.h" 11 #include "extensions/renderer/object_backed_native_handler.h"
12 #include "ipc/ipc_message.h" 12 #include "ipc/ipc_message.h"
13 #include "ui/accessibility/ax_tree.h" 13 #include "ui/accessibility/ax_tree.h"
14 #include "v8/include/v8.h" 14 #include "v8/include/v8.h"
15 15
16 struct ExtensionMsg_AccessibilityEventParams; 16 struct ExtensionMsg_AccessibilityEventParams;
17 struct ExtensionMsg_AccessibilityLocationChangeParams; 17 struct ExtensionMsg_AccessibilityLocationChangeParams;
18 18
19 namespace extensions { 19 namespace extensions {
20 20
21 class AutomationInternalCustomBindings; 21 class AutomationInternalCustomBindings;
22 class AutomationMessageFilter; 22 class AutomationMessageFilter;
23 class ExtensionBindingsSystem;
23 24
24 struct TreeCache { 25 struct TreeCache {
25 TreeCache(); 26 TreeCache();
26 ~TreeCache(); 27 ~TreeCache();
27 28
28 int tab_id; 29 int tab_id;
29 int tree_id; 30 int tree_id;
30 int parent_node_id_from_parent_tree; 31 int parent_node_id_from_parent_tree;
31 32
32 gfx::Vector2d location_offset; 33 gfx::Vector2d location_offset;
33 ui::AXTree tree; 34 ui::AXTree tree;
34 AutomationInternalCustomBindings* owner; 35 AutomationInternalCustomBindings* owner;
35 }; 36 };
36 37
37 struct TreeChangeObserver { 38 struct TreeChangeObserver {
38 int id; 39 int id;
39 api::automation::TreeChangeObserverFilter filter; 40 api::automation::TreeChangeObserverFilter filter;
40 }; 41 };
41 42
42 // The native component of custom bindings for the chrome.automationInternal 43 // The native component of custom bindings for the chrome.automationInternal
43 // API. 44 // API.
44 class AutomationInternalCustomBindings : public ObjectBackedNativeHandler, 45 class AutomationInternalCustomBindings : public ObjectBackedNativeHandler,
45 public ui::AXTreeDelegate { 46 public ui::AXTreeDelegate {
46 public: 47 public:
47 explicit AutomationInternalCustomBindings(ScriptContext* context); 48 AutomationInternalCustomBindings(ScriptContext* context,
49 ExtensionBindingsSystem* bindings_system);
48 50
49 ~AutomationInternalCustomBindings() override; 51 ~AutomationInternalCustomBindings() override;
50 52
51 void OnMessageReceived(const IPC::Message& message); 53 void OnMessageReceived(const IPC::Message& message);
52 54
53 TreeCache* GetTreeCacheFromTreeID(int tree_id); 55 TreeCache* GetTreeCacheFromTreeID(int tree_id);
54 56
55 ui::AXNode* GetParent(ui::AXNode* node, TreeCache** in_out_cache); 57 ui::AXNode* GetParent(ui::AXNode* node, TreeCache** in_out_cache);
56 58
57 ScriptContext* context() const { 59 ScriptContext* context() const {
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 base::hash_map<int, TreeCache*> tree_id_to_tree_cache_map_; 178 base::hash_map<int, TreeCache*> tree_id_to_tree_cache_map_;
177 base::hash_map<ui::AXTree*, TreeCache*> axtree_to_tree_cache_map_; 179 base::hash_map<ui::AXTree*, TreeCache*> axtree_to_tree_cache_map_;
178 scoped_refptr<AutomationMessageFilter> message_filter_; 180 scoped_refptr<AutomationMessageFilter> message_filter_;
179 bool is_active_profile_; 181 bool is_active_profile_;
180 std::vector<TreeChangeObserver> tree_change_observers_; 182 std::vector<TreeChangeObserver> tree_change_observers_;
181 // A bit-map of api::automation::TreeChangeObserverFilter. 183 // A bit-map of api::automation::TreeChangeObserverFilter.
182 int tree_change_observer_overall_filter_; 184 int tree_change_observer_overall_filter_;
183 std::vector<int> deleted_node_ids_; 185 std::vector<int> deleted_node_ids_;
184 std::vector<int> text_changed_node_ids_; 186 std::vector<int> text_changed_node_ids_;
185 187
188 ExtensionBindingsSystem* bindings_system_;
189
186 DISALLOW_COPY_AND_ASSIGN(AutomationInternalCustomBindings); 190 DISALLOW_COPY_AND_ASSIGN(AutomationInternalCustomBindings);
187 }; 191 };
188 192
189 } // namespace extensions 193 } // namespace extensions
190 194
191 #endif // CHROME_RENDERER_EXTENSIONS_AUTOMATION_INTERNAL_CUSTOM_BINDINGS_H_ 195 #endif // CHROME_RENDERER_EXTENSIONS_AUTOMATION_INTERNAL_CUSTOM_BINDINGS_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/renderer/extensions/automation_internal_custom_bindings.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698