Rework UD settings.

pull/1/head
Matthew Chen 7 years ago
parent f765c6c1bb
commit 55ab6c39d4

@ -209,16 +209,58 @@ NS_ASSUME_NONNULL_BEGIN
OWSTableSection *unidentifiedDeliveryIndicatorsSection = [OWSTableSection new];
unidentifiedDeliveryIndicatorsSection.headerTitle
= NSLocalizedString(@"SETTINGS_UNIDENTIFIED_DELIVERY_SECTION_TITLE", @"table section label");
[unidentifiedDeliveryIndicatorsSection
addItem:[OWSTableItem
itemWithCustomCellBlock:^UITableViewCell * {
UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1
reuseIdentifier:@"UITableViewCellStyleValue1"];
[OWSTableItem configureCell:cell];
cell.preservesSuperviewLayoutMargins = YES;
cell.contentView.preservesSuperviewLayoutMargins = YES;
cell.selectionStyle = UITableViewCellSelectionStyleNone;
UILabel *label = [UILabel new];
label.text
= NSLocalizedString(@"SETTINGS_UNIDENTIFIED_DELIVERY_SHOW_INDICATORS", @"switch label");
label.font = [UIFont ows_regularFontWithSize:18.f];
label.textColor = [Theme primaryColor];
[label setContentHuggingHorizontalHigh];
UIImage *icon = [UIImage imageNamed:@"ic_secret_sender_indicator"];
UIImageView *iconView = [[UIImageView alloc]
initWithImage:[icon imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]];
iconView.tintColor = Theme.secondaryColor;
[iconView setContentHuggingHorizontalHigh];
UIView *spacer = [UIView new];
[spacer setContentHuggingHorizontalLow];
UISwitch *cellSwitch = [UISwitch new];
cell.accessoryView = cellSwitch;
[cellSwitch setOn:weakSelf.preferences.shouldShowUnidentifiedDeliveryIndicators];
[cellSwitch addTarget:weakSelf
action:@selector(didToggleUDShowIndicatorsSwitch:)
forControlEvents:UIControlEventValueChanged];
[cellSwitch setContentHuggingHorizontalHigh];
UIStackView *stackView =
[[UIStackView alloc] initWithArrangedSubviews:@[ label, iconView, spacer, cellSwitch ]];
stackView.axis = UILayoutConstraintAxisHorizontal;
stackView.spacing = 10;
[cell.contentView addSubview:stackView];
[stackView ows_autoPinToSuperviewMargins];
return cell;
}
customRowHeight:UITableViewAutomaticDimension
actionBlock:^{
NSURL *url = [NSURL URLWithString:@"https://signal.org/blog/secret-sender/"];
OWSAssertDebug(url);
[UIApplication.sharedApplication openURL:url];
}]];
unidentifiedDeliveryIndicatorsSection.footerTitle
= NSLocalizedString(@"SETTINGS_UNIDENTIFIED_DELIVERY_SHOW_INDICATORS_FOOTER", @"table section footer");
OWSTableItem *showUDIndicatorsItem = [OWSTableItem
switchItemWithText:NSLocalizedString(@"SETTINGS_UNIDENTIFIED_DELIVERY_SHOW_INDICATORS", @"switch label")
isOn:weakSelf.preferences.shouldShowUnidentifiedDeliveryIndicators
target:weakSelf
selector:@selector(didToggleUDShowIndicatorsSwitch:)];
[unidentifiedDeliveryIndicatorsSection addItem:showUDIndicatorsItem];
[contents addSection:unidentifiedDeliveryIndicatorsSection];
OWSTableSection *unidentifiedDeliveryUnrestrictedSection = [OWSTableSection new];
@ -228,53 +270,20 @@ NS_ASSUME_NONNULL_BEGIN
target:weakSelf
selector:@selector(didToggleUDUnrestrictedAccessSwitch:)];
[unidentifiedDeliveryUnrestrictedSection addItem:unrestrictedAccessItem];
unidentifiedDeliveryUnrestrictedSection.footerTitle
= NSLocalizedString(@"SETTINGS_UNIDENTIFIED_DELIVERY_UNRESTRICTED_ACCESS_FOOTER", @"table section footer");
[contents addSection:unidentifiedDeliveryUnrestrictedSection];
OWSTableSection *unidentifiedDeliveryLearnMoreSection = [OWSTableSection new];
[unidentifiedDeliveryLearnMoreSection
addItem:[OWSTableItem
itemWithCustomCellBlock:^UITableViewCell * {
UITableViewCell *cell = [OWSTableItem newCell];
cell.preservesSuperviewLayoutMargins = YES;
cell.contentView.preservesSuperviewLayoutMargins = YES;
NSAttributedString *attributedText = [NSAttributedString new];
attributedText = [attributedText
rtlSafeAppend:NSLocalizedString(
@"SETTINGS_UNIDENTIFIED_DELIVERY_UNRESTRICTED_ACCESS_FOOTER",
@"table section footer")
attributes:@{
NSFontAttributeName : [UIFont ows_dynamicTypeFootnoteFont],
NSForegroundColorAttributeName : [Theme secondaryColor],
}];
attributedText =
[attributedText rtlSafeAppend:@" "
attributes:@{
NSFontAttributeName : [UIFont ows_dynamicTypeFootnoteFont],
}];
attributedText = [attributedText
rtlSafeAppend:NSLocalizedString(@"SETTINGS_UNIDENTIFIED_DELIVERY_LEARN_MORE",
@"Label for a link to more info about unidentified delivery.")
attributes:@{
NSFontAttributeName : [UIFont ows_dynamicTypeFootnoteFont],
NSForegroundColorAttributeName : [UIColor ows_materialBlueColor],
}];
UILabel *label = [UILabel new];
label.attributedText = attributedText;
label.numberOfLines = 0;
label.lineBreakMode = NSLineBreakByWordWrapping;
[cell.contentView addSubview:label];
[label ows_autoPinToSuperviewMargins];
return cell;
}
customRowHeight:UITableViewAutomaticDimension
actionBlock:^{
NSURL *url = [NSURL URLWithString:@"https://signal.org/blog/secret-sender/"];
OWSAssertDebug(url);
[UIApplication.sharedApplication openURL:url];
}]];
addItem:[OWSTableItem disclosureItemWithText:NSLocalizedString(@"SETTINGS_UNIDENTIFIED_DELIVERY_LEARN_MORE",
@"Label for a link to more info about unidentified delivery.")
actionBlock:^{
NSURL *url =
[NSURL URLWithString:@"https://signal.org/blog/secret-sender/"];
OWSAssertDebug(url);
[UIApplication.sharedApplication openURL:url];
}]];
[contents addSection:unidentifiedDeliveryLearnMoreSection];
self.contents = contents;

Loading…
Cancel
Save