OLD | NEW |
---|---|
(Empty) | |
1 // Copyright (c) 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 #include "content/browser/accessibility/frame_tree_accessibility.h" | |
6 | |
7 namespace content { | |
8 | |
9 const uint32 kNoFrameId = 0; | |
10 | |
11 FrameTreeAccessibility::FrameTreeAccessibility() | |
12 : next_id_(1) { | |
13 } | |
14 | |
15 FrameTreeAccessibility::~FrameTreeAccessibility() { | |
16 } | |
17 | |
18 FrameTreeAccessibility* FrameTreeAccessibility::GetInstance() { | |
19 return Singleton<FrameTreeAccessibility>::get(); | |
20 } | |
21 | |
22 void FrameTreeAccessibility::OnFrameCreated( | |
23 BrowserAccessibilityDelegate* frame) { | |
24 uint32 id = next_id_++; | |
25 frame_to_id_[frame] = id; | |
26 id_to_frame_[id] = frame; | |
27 } | |
28 | |
29 void FrameTreeAccessibility::OnFrameDeleted( | |
30 BrowserAccessibilityDelegate* frame) { | |
31 if (frame_to_id_.find(frame) == frame_to_id_.end()) | |
32 return; | |
33 uint32 id = frame_to_id_[frame]; | |
34 frame_to_id_.erase(frame); | |
35 id_to_frame_.erase(id); | |
36 id_to_manager_.erase(id); | |
37 } | |
38 | |
39 void FrameTreeAccessibility::SetFrameAccessibilityManager( | |
40 BrowserAccessibilityDelegate* frame, | |
41 BrowserAccessibilityManager* manager) { | |
42 if (frame_to_id_.find(frame) == frame_to_id_.end()) | |
aboxhall
2014/05/06 15:41:27
How could this happen? Is it an error?
| |
43 return; | |
44 uint32 id = frame_to_id_[frame]; | |
45 id_to_manager_[id] = manager; | |
46 } | |
47 | |
48 uint32 FrameTreeAccessibility::GetFrameId(BrowserAccessibilityDelegate* frame) { | |
49 if (frame_to_id_.find(frame) == frame_to_id_.end()) | |
50 return kNoFrameId; | |
51 return frame_to_id_[frame]; | |
52 } | |
53 | |
54 BrowserAccessibilityDelegate* FrameTreeAccessibility::FindFrameById(uint32 id) { | |
55 if (id_to_frame_.find(id) == id_to_frame_.end()) | |
56 return NULL; | |
57 return id_to_frame_[id]; | |
58 } | |
59 | |
60 BrowserAccessibilityManager* | |
61 FrameTreeAccessibility::FindAccessibilityManagerById(uint32 id) { | |
62 if (id_to_manager_.find(id) == id_to_manager_.end()) | |
63 return NULL; | |
64 return id_to_manager_[id]; | |
65 } | |
66 | |
67 } // namespace content | |
OLD | NEW |