summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm b/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm
index 1cb51a37bc..47ba50a443 100644
--- a/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm
+++ b/src/plugins/platforms/cocoa/qcocoaaccessibilityelement.mm
@@ -419,6 +419,11 @@ static void convertLineOffset(QAccessibleTextInterface *text, int &line, int &of
NSRange range = [parameter rangeValue];
QString text = iface->textInterface()->text(range.location, range.location + range.length);
return [[NSAttributedString alloc] initWithString: text.toNSString()];
+ } else if ([attribute isEqualToString: NSAccessibilityRangeForPositionParameterizedAttribute]) {
+ NSPoint nsPoint = [parameter pointValue];
+ 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)];
}
return nil;
}