OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "content/renderer/accessibility/render_accessibility_impl.h" | 5 #include "content/renderer/accessibility/render_accessibility_impl.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <queue> | 10 #include <queue> |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 RenderAccessibilityImpl::RenderAccessibilityImpl(RenderFrameImpl* render_frame) | 68 RenderAccessibilityImpl::RenderAccessibilityImpl(RenderFrameImpl* render_frame) |
69 : RenderFrameObserver(render_frame), | 69 : RenderFrameObserver(render_frame), |
70 render_frame_(render_frame), | 70 render_frame_(render_frame), |
71 tree_source_(render_frame), | 71 tree_source_(render_frame), |
72 serializer_(&tree_source_), | 72 serializer_(&tree_source_), |
73 pdf_tree_source_(nullptr), | 73 pdf_tree_source_(nullptr), |
74 last_scroll_offset_(gfx::Size()), | 74 last_scroll_offset_(gfx::Size()), |
75 ack_pending_(false), | 75 ack_pending_(false), |
76 reset_token_(0), | 76 reset_token_(0), |
77 weak_factory_(this) { | 77 weak_factory_(this) { |
| 78 // There's only one AXObjectCache for the root of a local frame tree, |
| 79 // so if this frame's parent is local we can safely do nothing. |
| 80 if (render_frame_ && |
| 81 render_frame_->GetWebFrame() && |
| 82 render_frame_->GetWebFrame()->parent() && |
| 83 render_frame_->GetWebFrame()->parent()->isWebLocalFrame()) { |
| 84 return; |
| 85 } |
| 86 |
78 WebView* web_view = render_frame_->GetRenderView()->GetWebView(); | 87 WebView* web_view = render_frame_->GetRenderView()->GetWebView(); |
79 WebSettings* settings = web_view->settings(); | 88 WebSettings* settings = web_view->settings(); |
80 settings->setAccessibilityEnabled(true); | 89 settings->setAccessibilityEnabled(true); |
81 | 90 |
82 #if defined(OS_ANDROID) | 91 #if defined(OS_ANDROID) |
83 // Password values are only passed through on Android. | 92 // Password values are only passed through on Android. |
84 settings->setAccessibilityPasswordValuesEnabled(true); | 93 settings->setAccessibilityPasswordValuesEnabled(true); |
85 #endif | 94 #endif |
86 | 95 |
87 #if !defined(OS_ANDROID) | 96 #if !defined(OS_ANDROID) |
(...skipping 592 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
680 size_t new_count = pdf_update.nodes.size(); | 689 size_t new_count = pdf_update.nodes.size(); |
681 update->nodes.resize(old_count + new_count); | 690 update->nodes.resize(old_count + new_count); |
682 for (size_t i = 0; i < new_count; ++i) | 691 for (size_t i = 0; i < new_count; ++i) |
683 update->nodes[old_count + i] = pdf_update.nodes[i]; | 692 update->nodes[old_count + i] = pdf_update.nodes[i]; |
684 break; | 693 break; |
685 } | 694 } |
686 } | 695 } |
687 } | 696 } |
688 | 697 |
689 } // namespace content | 698 } // namespace content |
OLD | NEW |