diff options
author | Iain Merrick <husky@google.com> | 2010-09-13 16:35:48 +0100 |
---|---|---|
committer | Iain Merrick <husky@google.com> | 2010-09-16 12:10:42 +0100 |
commit | 5abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306 (patch) | |
tree | ddce1aa5e3b6967a69691892e500897558ff8ab6 /WebCore/accessibility/gtk | |
parent | 12bec63ec71e46baba27f0bd9bd9d8067683690a (diff) | |
download | external_webkit-5abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306.zip external_webkit-5abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306.tar.gz external_webkit-5abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306.tar.bz2 |
Merge WebKit at r67178 : Initial merge by git.
Change-Id: I57e01163b6866cb029cdadf405a0394a3918bc18
Diffstat (limited to 'WebCore/accessibility/gtk')
-rw-r--r-- | WebCore/accessibility/gtk/AccessibilityObjectAtk.cpp | 4 | ||||
-rw-r--r-- | WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp | 12 |
2 files changed, 16 insertions, 0 deletions
diff --git a/WebCore/accessibility/gtk/AccessibilityObjectAtk.cpp b/WebCore/accessibility/gtk/AccessibilityObjectAtk.cpp index d00574b..b22a51e 100644 --- a/WebCore/accessibility/gtk/AccessibilityObjectAtk.cpp +++ b/WebCore/accessibility/gtk/AccessibilityObjectAtk.cpp @@ -71,6 +71,10 @@ AccessibilityObjectInclusion AccessibilityObject::accessibilityPlatformIncludesO if (role == StaticTextRole) return IgnoreObject; + // Bullets/numbers for list items shouldn't be exposed as AtkObjects. + if (roleValue() == ListMarkerRole) + return IgnoreObject; + return DefaultBehavior; } diff --git a/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp b/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp index b162346..90f363f 100644 --- a/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp +++ b/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp @@ -34,6 +34,7 @@ #if HAVE(ACCESSIBILITY) #include "AXObjectCache.h" +#include "AccessibilityList.h" #include "AccessibilityListBox.h" #include "AccessibilityListBoxOption.h" #include "AccessibilityRenderObject.h" @@ -54,6 +55,7 @@ #include "InlineTextBox.h" #include "IntRect.h" #include "NotImplemented.h" +#include "RenderListMarker.h" #include "RenderText.h" #include "TextEncoding.h" #include <wtf/text/CString.h> @@ -933,6 +935,16 @@ static gchar* webkit_accessible_text_get_text(AtkText* text, gint startOffset, g ret = ret.substring(start, endOffset - startOffset); } + // Prefix a item number/bullet if needed + if (coreObject->roleValue() == ListItemRole) { + RenderObject* objRenderer = static_cast<AccessibilityRenderObject*>(coreObject)->renderer(); + RenderObject* markerRenderer = objRenderer ? objRenderer->firstChild() : 0; + if (markerRenderer && markerRenderer->isListMarker()) { + String markerTxt = toRenderListMarker(markerRenderer)->text(); + ret = markerTxt.length() > 0 ? markerTxt + " " + ret : ret; + } + } + return g_strdup(ret.utf8().data()); } |