Skip to content

Commit 5498570

Browse files
emielvanliereiRoachie
authored andcommitted
feat: Pass origin of selected cell in onPress callback (#196)
1 parent b76367d commit 5498570

File tree

3 files changed

+9
-0
lines changed

3 files changed

+9
-0
lines changed

RNTableView/RNTableView.m

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -530,6 +530,13 @@ - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath
530530
newValue[@"target"] = self.reactTag;
531531
newValue[@"selectedIndex"] = [NSNumber numberWithInteger:indexPath.item];
532532
newValue[@"selectedSection"] = [NSNumber numberWithInteger:indexPath.section];
533+
534+
CGRect selectedCellRect = [tableView rectForRowAtIndexPath:indexPath];
535+
selectedCellRect = CGRectOffset(selectedCellRect, -tableView.contentOffset.x, -tableView.contentOffset.y);
536+
newValue[@"selectedOrigin"] = @{
537+
@"x": @(selectedCellRect.origin.x),
538+
@"y": @(selectedCellRect.origin.y)
539+
};
533540

534541
/*
535542
* if allowToggle is enabled and we tap an already selected row, then remove the selection.

RNTableView/RNTableViewManager.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ - (NSArray *)customDirectEventTypes
4747
RCT_EXPORT_VIEW_PROPERTY(additionalItems, NSArray)
4848
RCT_EXPORT_VIEW_PROPERTY(selectedIndex, NSInteger)
4949
RCT_EXPORT_VIEW_PROPERTY(selectedSection, NSInteger)
50+
RCT_EXPORT_VIEW_PROPERTY(selectedOrigin, CGPoint)
5051
RCT_EXPORT_VIEW_PROPERTY(cellHeight, float)
5152
RCT_EXPORT_VIEW_PROPERTY(footerHeight, float)
5253
RCT_EXPORT_VIEW_PROPERTY(headerHeight, float)

src/index.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ interface OnPressCallBack extends CallBack {
3333
children: string
3434
selectedIndex: number
3535
selectedSection: number
36+
selectedOrigin: PointPropType
3637
footerLabel?: string
3738
label?: string
3839
}

0 commit comments

Comments
 (0)