# HG changeset patch # User antonc27 # Date 1439685123 -7200 # Node ID b34c0e2b546abc9dda00a7c0f280dbb41d29f02d # Parent 41cfa8edf02f10a6a3f3da95b984ed5cad09bc3e - Fix for 'hold for delete' for cells in teams table diff -r 41cfa8edf02f -r b34c0e2b546a project_files/HedgewarsMobile/Classes/HoldTableViewCell.m --- a/project_files/HedgewarsMobile/Classes/HoldTableViewCell.m Sat Aug 15 20:49:06 2015 +0200 +++ b/project_files/HedgewarsMobile/Classes/HoldTableViewCell.m Sun Aug 16 02:32:03 2015 +0200 @@ -57,7 +57,29 @@ -(void) holdAction { if (self.delegate != nil && [self.delegate respondsToSelector:@selector(holdAction:onTable:)]) - [self.delegate holdAction:self.textLabel.text onTable:(UITableView *)self.superview]; + { + UITableView *tableView = [self findTable]; + if (tableView) + { + [self.delegate holdAction:self.textLabel.text onTable:tableView]; + } + } +} + +- (UITableView *)findTable +{ + UIView *tableView = self.superview; + while (![tableView isKindOfClass:[UITableView class]] || (tableView == nil)) + { + tableView = tableView.superview; + + if ([tableView isEqual:self.window]) + { + tableView = nil; + } + } + + return (UITableView *)tableView; } -(void) dealloc {