+
+
diff --git a/layout/generic/nsGfxScrollFrame.cpp b/layout/generic/nsGfxScrollFrame.cpp
index 547d931e0c1..e05e0b9cb07 100644
--- a/layout/generic/nsGfxScrollFrame.cpp
+++ b/layout/generic/nsGfxScrollFrame.cpp
@@ -969,10 +969,14 @@ nsHTMLScrollFrame::GetFrameName(nsAString& aResult) const
already_AddRefed
nsHTMLScrollFrame::CreateAccessible()
{
- if (!IsFocusable()) {
+ // Create an accessible regardless focusable state because the state can be
+ // changed during frame life cycle without any notifications to accessibility.
+ if (mContent->IsRootOfNativeAnonymousSubtree() ||
+ GetScrollbarStyles() == nsIScrollableFrame::
+ ScrollbarStyles(NS_STYLE_OVERFLOW_HIDDEN, NS_STYLE_OVERFLOW_HIDDEN) ) {
return nsnull;
}
- // Focusable via CSS, so needs to be in accessibility hierarchy
+
nsAccessibilityService* accService = nsIPresShell::AccService();
if (accService) {
return accService->CreateHyperTextAccessible(mContent,