summaryrefslogtreecommitdiffstats
path: root/WebCore/accessibility
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2010-06-15 19:36:43 +0100
committerBen Murdoch <benm@google.com>2010-06-16 14:52:28 +0100
commit545e470e52f0ac6a3a072bf559c796b42c6066b6 (patch)
treec0c14763654d84d37577dde512c3d3b4699a9e86 /WebCore/accessibility
parent719298a66237d38ea5c05f1547123ad8aacbc237 (diff)
downloadexternal_webkit-545e470e52f0ac6a3a072bf559c796b42c6066b6.zip
external_webkit-545e470e52f0ac6a3a072bf559c796b42c6066b6.tar.gz
external_webkit-545e470e52f0ac6a3a072bf559c796b42c6066b6.tar.bz2
Merge webkit.org at r61121: Initial merge by git.
Change-Id: Icd6db395c62285be384d137164d95d7466c98760
Diffstat (limited to 'WebCore/accessibility')
-rw-r--r--WebCore/accessibility/AccessibilityRenderObject.cpp21
-rw-r--r--WebCore/accessibility/mac/AccessibilityObjectWrapper.mm11
2 files changed, 18 insertions, 14 deletions
diff --git a/WebCore/accessibility/AccessibilityRenderObject.cpp b/WebCore/accessibility/AccessibilityRenderObject.cpp
index 48829a2..ffe62f8 100644
--- a/WebCore/accessibility/AccessibilityRenderObject.cpp
+++ b/WebCore/accessibility/AccessibilityRenderObject.cpp
@@ -60,6 +60,7 @@
#include "RenderHTMLCanvas.h"
#include "RenderImage.h"
#include "RenderInline.h"
+#include "RenderLayer.h"
#include "RenderListBox.h"
#include "RenderListMarker.h"
#include "RenderMenuList.h"
@@ -649,7 +650,7 @@ bool AccessibilityRenderObject::isOffScreen() const
{
ASSERT(m_renderer);
IntRect contentRect = m_renderer->absoluteClippedOverflowRect();
- FrameView* view = m_renderer->document()->frame()->view();
+ FrameView* view = m_renderer->frame()->view();
FloatRect viewRect = view->visibleContentRect();
viewRect.intersect(contentRect);
return viewRect.isEmpty();
@@ -928,6 +929,10 @@ String AccessibilityRenderObject::helpText() const
if (!m_renderer)
return String();
+ const AtomicString& ariaHelp = getAttribute(aria_helpAttr);
+ if (!ariaHelp.isEmpty())
+ return ariaHelp;
+
for (RenderObject* curr = m_renderer; curr; curr = curr->parent()) {
if (curr->node() && curr->node()->isHTMLElement()) {
const AtomicString& summary = static_cast<Element*>(curr->node())->getAttribute(summaryAttr);
@@ -1126,7 +1131,7 @@ String AccessibilityRenderObject::stringValue() const
return toRenderButton(m_renderer)->text();
if (isWebArea()) {
- if (m_renderer->document()->frame())
+ if (m_renderer->frame())
return String();
// FIXME: should use startOfDocument and endOfDocument (or rangeForDocument?) here
@@ -1469,8 +1474,8 @@ AccessibilityObject* AccessibilityRenderObject::internalLinkElement() const
return 0;
// check if URL is the same as current URL
- linkURL.removeFragmentIdentifier();
- if (m_renderer->document()->url() != linkURL)
+ KURL documentURL = m_renderer->document()->url();
+ if (!equalIgnoringFragmentIdentifier(documentURL, linkURL))
return 0;
Node* linkedNode = m_renderer->document()->findAnchor(fragmentIdentifier);
@@ -1848,7 +1853,7 @@ bool AccessibilityRenderObject::accessibilityIsIgnored() const
bool AccessibilityRenderObject::isLoaded() const
{
- return !m_renderer->document()->tokenizer();
+ return !m_renderer->document()->parser();
}
double AccessibilityRenderObject::estimatedLoadingProgress() const
@@ -1968,7 +1973,7 @@ const AtomicString& AccessibilityRenderObject::accessKey() const
VisibleSelection AccessibilityRenderObject::selection() const
{
- return m_renderer->document()->frame()->selection()->selection();
+ return m_renderer->frame()->selection()->selection();
}
PlainTextRange AccessibilityRenderObject::selectedTextRange() const
@@ -2521,10 +2526,10 @@ void AccessibilityRenderObject::setSelectedVisiblePositionRange(const VisiblePos
// make selection and tell the document to use it. if it's zero length, then move to that position
if (range.start == range.end)
- m_renderer->document()->frame()->selection()->moveTo(range.start, true);
+ m_renderer->frame()->selection()->moveTo(range.start, true);
else {
VisibleSelection newSelection = VisibleSelection(range.start, range.end);
- m_renderer->document()->frame()->selection()->setSelection(newSelection);
+ m_renderer->frame()->selection()->setSelection(newSelection);
}
}
diff --git a/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm b/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm
index 8e81935..1fdb0cc 100644
--- a/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm
+++ b/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm
@@ -2331,12 +2331,9 @@ static RenderObject* rendererForView(NSView* view)
} else if ([parameter isKindOfClass:[NSValue self]] && strcmp([(NSValue*)parameter objCType], @encode(NSRange)) == 0) {
rangeSet = true;
range = [(NSValue*)parameter rangeValue];
-
} else {
- // got a parameter of a type we never use
- // NOTE: No ASSERT_NOT_REACHED because this can happen accidentally
- // while using accesstool (e.g.), forcing you to start over
- return nil;
+ // Attribute type is not supported. Allow super to handle.
+ return [super accessibilityAttributeValue:attribute forParameter:parameter];
}
// dispatch
@@ -2575,7 +2572,9 @@ static RenderObject* rendererForView(NSView* view)
}
}
- return nil;
+ // There are some parameters that super handles that are not explicitly returned by the list of the element's attributes.
+ // In that case it must be passed to super.
+ return [super accessibilityAttributeValue:attribute forParameter:parameter];
}
- (BOOL)accessibilityShouldUseUniqueId