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

Side by Side Diff: components/test_runner/accessibility_controller.h

Issue 2707183003: Move //components/test_runner back into //content/shell (Closed)
Patch Set: Trim DEPS Created 3 years, 10 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
(Empty)
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
3 // found in the LICENSE file.
4
5 #ifndef COMPONENTS_TEST_RUNNER_ACCESSIBILITY_CONTROLLER_H_
6 #define COMPONENTS_TEST_RUNNER_ACCESSIBILITY_CONTROLLER_H_
7
8 #include <vector>
9
10 #include "base/macros.h"
11 #include "base/memory/weak_ptr.h"
12 #include "components/test_runner/web_ax_object_proxy.h"
13 #include "third_party/WebKit/public/web/WebAXObject.h"
14 #include "v8/include/v8.h"
15
16 namespace blink {
17 class WebLocalFrame;
18 class WebString;
19 class WebView;
20 }
21
22 namespace test_runner {
23
24 class WebViewTestProxyBase;
25
26 class AccessibilityController {
27 public:
28 explicit AccessibilityController(
29 WebViewTestProxyBase* web_view_test_proxy_base);
30 ~AccessibilityController();
31
32 void Reset();
33 void Install(blink::WebLocalFrame* frame);
34 bool ShouldLogAccessibilityEvents();
35 void NotificationReceived(const blink::WebAXObject& target,
36 const std::string& notification_name);
37
38 private:
39 friend class AccessibilityControllerBindings;
40
41 // Bound methods and properties
42 void LogAccessibilityEvents();
43 void SetNotificationListener(v8::Local<v8::Function> callback);
44 void UnsetNotificationListener();
45 v8::Local<v8::Object> FocusedElement();
46 v8::Local<v8::Object> RootElement();
47 v8::Local<v8::Object> AccessibleElementById(const std::string& id);
48
49 v8::Local<v8::Object> FindAccessibleElementByIdRecursive(
50 const blink::WebAXObject&, const blink::WebString& id);
51
52 // If true, will log all accessibility notifications.
53 bool log_accessibility_events_;
54
55 WebAXObjectProxyList elements_;
56
57 v8::Persistent<v8::Function> notification_callback_;
58
59 blink::WebView* web_view();
60 WebViewTestProxyBase* web_view_test_proxy_base_;
61
62 base::WeakPtrFactory<AccessibilityController> weak_factory_;
63
64 DISALLOW_COPY_AND_ASSIGN(AccessibilityController);
65 };
66
67 } // namespace test_runner
68
69 #endif // COMPONENTS_TEST_RUNNER_ACCESSIBILITY_CONTROLLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698