| Index: chrome/browser/tab_contents/tab_contents.cc
|
| ===================================================================
|
| --- chrome/browser/tab_contents/tab_contents.cc (revision 46908)
|
| +++ chrome/browser/tab_contents/tab_contents.cc (working copy)
|
| @@ -291,7 +291,8 @@
|
| is_showing_before_unload_dialog_(false),
|
| renderer_preferences_(),
|
| opener_dom_ui_type_(DOMUIFactory::kNoDOMUI),
|
| - language_state_(&controller_) {
|
| + language_state_(&controller_),
|
| + requested_accessibility_tree_(false) {
|
| ClearBlockedContentSettings();
|
| renderer_preferences_util::UpdateFromSystemSettings(
|
| &renderer_preferences_, profile);
|
| @@ -349,6 +350,10 @@
|
| // Set-up the showing of the omnibox search infobar if applicable.
|
| if (OmniboxSearchHint::IsEnabled(profile))
|
| omnibox_search_hint_.reset(new OmniboxSearchHint(this));
|
| +
|
| + renderer_accessible_ =
|
| + CommandLine::ForCurrentProcess()->HasSwitch(
|
| + switches::kEnableRendererAccessibility);
|
| }
|
|
|
| TabContents::~TabContents() {
|
| @@ -2127,6 +2132,10 @@
|
|
|
| void TabContents::DocumentLoadedInFrame() {
|
| controller_.DocumentLoadedInFrame();
|
| + if (renderer_accessible_ && !requested_accessibility_tree_) {
|
| + render_view_host()->RequestAccessibilityTree();
|
| + requested_accessibility_tree_ = true;
|
| + }
|
| }
|
|
|
| void TabContents::OnContentBlocked(ContentSettingsType type) {
|
| @@ -2296,6 +2305,8 @@
|
| const ViewHostMsg_FrameNavigate_Params& params) {
|
| int extra_invalidate_flags = 0;
|
|
|
| + requested_accessibility_tree_ = false;
|
| +
|
| if (PageTransition::IsMainFrame(params.transition)) {
|
| bool was_bookmark_bar_visible = ShouldShowBookmarkBar();
|
| bool was_extension_shelf_visible = IsExtensionShelfAlwaysVisible();
|
|
|