diff options
author | Boris Dušek <me@dusek.me> | 2015-01-05 23:32:41 +0100 |
---|---|---|
committer | Boris Dušek <me@dusek.me> | 2015-02-13 06:59:52 +0000 |
commit | e9bbe07501c4f76029fed0aa218b5376754951d9 (patch) | |
tree | 51b76a019f2a6fb5adb9a81fe6a7707f97cc5f04 /src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm | |
parent | 250e80ceb98e96514c886a8fb0d507fced1fc982 (diff) |
OS X Accessibility: implement AXStyleRangeForIndex in QTextEdit
Not tested as I have no idea what VoiceOver uses it for (it seems to
never query this attribute during any operation I tested).
Change-Id: Ie5e2b765a9956bcf2be9b659b8914e393ed1ea90
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
Diffstat (limited to 'src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm')
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm b/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm index 47ba50a443..d3bdbb9009 100644 --- a/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm +++ b/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm @@ -357,7 +357,7 @@ static void convertLineOffset(QAccessibleTextInterface *text, int &line, int &of // NSAccessibilityRangeForIndexParameterizedAttribute, NSAccessibilityBoundsForRangeParameterizedAttribute, // NSAccessibilityRTFForRangeParameterizedAttribute, -// NSAccessibilityStyleRangeForIndexParameterizedAttribute, + NSAccessibilityStyleRangeForIndexParameterizedAttribute, NSAccessibilityAttributedStringForRangeParameterizedAttribute, nil ]; @@ -424,6 +424,11 @@ static void convertLineOffset(QAccessibleTextInterface *text, int &line, int &of QPoint point(static_cast<int>(nsPoint.x), static_cast<int>(qt_mac_flipYCoordinate(nsPoint.y))); int offset = iface->textInterface()->offsetAtPoint(point); return [NSValue valueWithRange:NSMakeRange(static_cast<NSUInteger>(offset), 1)]; + } else if ([attribute isEqualToString: NSAccessibilityStyleRangeForIndexParameterizedAttribute]) { + int start = 0; + int end = 0; + iface->textInterface()->attributes([parameter intValue], &start, &end); + return [NSValue valueWithRange:NSMakeRange(static_cast<NSUInteger>(start), static_cast<NSUInteger>(end - start))]; } return nil; } |