mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-07-25 20:50:47 +00:00
Adjusting the feedback UI to use BITAttributedLabel and fix some bugs
This commit is contained in:
parent
806812098e
commit
dc654a0a3f
@ -28,11 +28,8 @@
|
||||
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
typedef enum {
|
||||
BITFeedbackListViewCellStyleNormal = 0, // right aligned header style
|
||||
BITFeedbackListViewCellStyleRepsonse = 1 // left aligned header style for dev responses
|
||||
} BITFeedbackListViewCellStyle;
|
||||
#import "BITFeedbackMessage.h"
|
||||
#import "BITAttributedLabel.h"
|
||||
|
||||
typedef enum {
|
||||
BITFeedbackListViewCellBackgroundStyleNormal = 0,
|
||||
@ -41,14 +38,12 @@ typedef enum {
|
||||
|
||||
@interface BITFeedbackListViewCell : UITableViewCell
|
||||
|
||||
@property (nonatomic) BITFeedbackListViewCellStyle style;
|
||||
@property (nonatomic, retain) BITFeedbackMessage *message;
|
||||
|
||||
@property (nonatomic) BITFeedbackListViewCellBackgroundStyle backgroundStyle;
|
||||
@property (nonatomic) BOOL sent;
|
||||
|
||||
@property (nonatomic, copy) NSDate *date;
|
||||
@property (nonatomic, copy) NSString *name;
|
||||
@property (nonatomic, copy) NSString *text;
|
||||
@property (nonatomic, retain) BITAttributedLabel *labelText;
|
||||
|
||||
+ (CGFloat) heightForRowWithText:(NSString *)text tableViewWidth:(CGFloat)width;
|
||||
+ (CGFloat) heightForRowWithMessage:(BITFeedbackMessage *)message tableViewWidth:(CGFloat)width;
|
||||
|
||||
@end
|
||||
|
@ -57,7 +57,6 @@
|
||||
@property (nonatomic, retain) NSDateFormatter *timeFormatter;
|
||||
|
||||
@property (nonatomic, retain) UILabel *labelTitle;
|
||||
@property (nonatomic, retain) UILabel *labelText;
|
||||
|
||||
@end
|
||||
|
||||
@ -69,13 +68,9 @@
|
||||
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
|
||||
if (self) {
|
||||
// Initialization code
|
||||
_style = BITFeedbackListViewCellStyleNormal;
|
||||
_backgroundStyle = BITFeedbackListViewCellBackgroundStyleNormal;
|
||||
_sent = YES;
|
||||
|
||||
_date = nil;
|
||||
_name = nil;
|
||||
_text = nil;
|
||||
_message = nil;
|
||||
|
||||
self.dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
|
||||
[self.dateFormatter setTimeStyle:NSDateFormatterNoStyle];
|
||||
@ -92,10 +87,11 @@
|
||||
self.labelTitle = [[[UILabel alloc] init] autorelease];
|
||||
self.labelTitle.font = [UIFont systemFontOfSize:TITLE_FONTSIZE];
|
||||
|
||||
self.labelText = [[[UILabel alloc] init] autorelease];
|
||||
self.labelText = [[[BITAttributedLabel alloc] init] autorelease];
|
||||
self.labelText.font = [UIFont systemFontOfSize:TEXT_FONTSIZE];
|
||||
self.labelText.numberOfLines = 0;
|
||||
self.labelText.textAlignment = UITextAlignmentLeft;
|
||||
self.labelText.dataDetectorTypes = UIDataDetectorTypeAll;
|
||||
}
|
||||
return self;
|
||||
}
|
||||
@ -107,9 +103,7 @@
|
||||
[_labelTitle release], _labelTitle = nil;
|
||||
[_labelText release], _labelText = nil;
|
||||
|
||||
[_date release], _date = nil;
|
||||
[_name release], _name = nil;
|
||||
[_text release], _text = nil;
|
||||
[_message release], _message = nil;
|
||||
|
||||
[super dealloc];
|
||||
}
|
||||
@ -132,15 +126,15 @@
|
||||
|
||||
#pragma mark - Layout
|
||||
|
||||
+ (CGFloat) heightForRowWithText:(NSString *)text tableViewWidth:(CGFloat)width {
|
||||
CGFloat calculatedHeight = [text sizeWithFont:[UIFont systemFontOfSize:TEXT_FONTSIZE]
|
||||
+ (CGFloat) heightForRowWithMessage:(BITFeedbackMessage *)message tableViewWidth:(CGFloat)width {
|
||||
CGFloat calculatedHeight = [message.text sizeWithFont:[UIFont systemFontOfSize:TEXT_FONTSIZE]
|
||||
constrainedToSize:CGSizeMake(width - (2 * FRAME_SIDE_BORDER), CGFLOAT_MAX)].height + FRAME_TOP_BORDER + LABEL_TEXT_Y + FRAME_BOTTOM_BORDER;
|
||||
return calculatedHeight;
|
||||
}
|
||||
|
||||
- (void)layoutSubviews {
|
||||
UIView *accessoryViewBackground = [[[UIView alloc] initWithFrame:CGRectMake(0, 2, self.frame.size.width * 2, self.frame.size.height - 2)] autorelease];
|
||||
|
||||
|
||||
// colors
|
||||
if (_backgroundStyle == BITFeedbackListViewCellBackgroundStyleNormal) {
|
||||
accessoryViewBackground.backgroundColor = BACKGROUNDCOLOR_DEFAULT;
|
||||
@ -154,30 +148,30 @@
|
||||
self.labelText.backgroundColor = BACKGROUNDCOLOR_ALTERNATE;
|
||||
}
|
||||
self.labelTitle.textColor = TEXTCOLOR_TITLE;
|
||||
if (self.sent) {
|
||||
[self.labelText setTextColor:TEXTCOLOR_DEFAULT];
|
||||
} else {
|
||||
if (_message.status == BITFeedbackMessageStatusSendPending || _message.status == BITFeedbackMessageStatusSendInProgress) {
|
||||
[self.labelText setTextColor:TEXTCOLOR_PENDING];
|
||||
} else {
|
||||
[self.labelText setTextColor:TEXTCOLOR_DEFAULT];
|
||||
}
|
||||
|
||||
// background for deletion accessory view
|
||||
[self addSubview:accessoryViewBackground];
|
||||
|
||||
|
||||
// header
|
||||
NSString *dateString;
|
||||
if (self.date) {
|
||||
if ([self isSameDayWithDate1:[NSDate date] date2:self.date]) {
|
||||
dateString = [self.timeFormatter stringFromDate:self.date];
|
||||
} else {
|
||||
dateString = [self.dateFormatter stringFromDate:self.date];
|
||||
}
|
||||
} else {
|
||||
if (_message.status == BITFeedbackMessageStatusSendPending || _message.status == BITFeedbackMessageStatusSendInProgress) {
|
||||
dateString = BITHockeyLocalizedString(@"Pending");
|
||||
} else {
|
||||
if ([self isSameDayWithDate1:[NSDate date] date2:_message.date]) {
|
||||
dateString = [self.timeFormatter stringFromDate:_message.date];
|
||||
} else {
|
||||
dateString = [self.dateFormatter stringFromDate:_message.date];
|
||||
}
|
||||
}
|
||||
[self.labelTitle setText:dateString];// [self.date description]];
|
||||
[self.labelTitle setFrame:CGRectMake(FRAME_SIDE_BORDER, FRAME_TOP_BORDER + LABEL_TITLE_Y, self.frame.size.width - (2 * FRAME_SIDE_BORDER), LABEL_TITLE_HEIGHT)];
|
||||
|
||||
if (_style == BITFeedbackListViewCellStyleNormal) {
|
||||
if (_message.userMessage) {
|
||||
self.labelTitle.textAlignment = UITextAlignmentRight;
|
||||
self.labelText.textAlignment = UITextAlignmentRight;
|
||||
} else {
|
||||
@ -188,9 +182,9 @@
|
||||
[self addSubview:self.labelTitle];
|
||||
|
||||
// text
|
||||
[self.labelText setText:self.text];
|
||||
[self.labelText setText:_message.text];
|
||||
CGSize size = CGSizeMake(self.frame.size.width - (2 * FRAME_SIDE_BORDER),
|
||||
[[self class] heightForRowWithText:self.text tableViewWidth:self.frame.size.width] - LABEL_TEXT_Y - FRAME_BOTTOM_BORDER);
|
||||
[[self class] heightForRowWithMessage:_message tableViewWidth:self.frame.size.width] - LABEL_TEXT_Y - FRAME_BOTTOM_BORDER);
|
||||
|
||||
[self.labelText setFrame:CGRectMake(FRAME_SIDE_BORDER, LABEL_TEXT_Y, size.width, size.height)];
|
||||
|
||||
|
@ -36,6 +36,7 @@
|
||||
#import "BITFeedbackComposeViewController.h"
|
||||
#import "BITFeedbackUserDataViewController.h"
|
||||
#import "BITFeedbackMessage.h"
|
||||
#import "BITAttributedLabel.h"
|
||||
|
||||
#import "BITHockeyHelper.h"
|
||||
#import <QuartzCore/QuartzCore.h>
|
||||
@ -54,7 +55,7 @@
|
||||
#define BORDER_COLOR2 BIT_RGBCOLOR(221, 221, 221)
|
||||
#define BORDER_COLOR3 BIT_RGBCOLOR(255, 255, 255)
|
||||
|
||||
@interface BITFeedbackListViewController () <BITFeedbackUserDataDelegate>
|
||||
@interface BITFeedbackListViewController () <BITFeedbackUserDataDelegate, BITAttributedLabelDelegate>
|
||||
@property (nonatomic, assign) BITFeedbackManager *manager;
|
||||
|
||||
@property (nonatomic, retain) NSDateFormatter *lastUpdateDateFormatter;
|
||||
@ -217,6 +218,7 @@
|
||||
destructiveButtonTitle:BITHockeyLocalizedString(@"HockeyFeedbackListDeleteAllDelete")
|
||||
otherButtonTitles:nil
|
||||
];
|
||||
[deleteAction setTag:0];
|
||||
[deleteAction setActionSheetStyle:UIActionSheetStyleBlackTranslucent];
|
||||
[deleteAction showInView:self.view];
|
||||
[deleteAction release];
|
||||
@ -227,9 +229,9 @@
|
||||
cancelButtonTitle:BITHockeyLocalizedString(@"HockeyFeedbackListDeleteAllCancel")
|
||||
otherButtonTitles:BITHockeyLocalizedString(@"HockeyFeedbackListDeleteAllDelete"), nil];
|
||||
|
||||
[deleteAction setTag:0];
|
||||
[deleteAction show];
|
||||
[deleteAction release];
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -316,7 +318,7 @@
|
||||
cell.textLabel.numberOfLines = 0;
|
||||
cell.accessoryType = UITableViewCellAccessoryNone;
|
||||
cell.selectionStyle = UITableViewCellSelectionStyleNone;
|
||||
|
||||
|
||||
// button
|
||||
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
|
||||
[button.layer setMasksToBounds:YES];
|
||||
@ -413,31 +415,9 @@
|
||||
}
|
||||
|
||||
BITFeedbackMessage *message = [self.manager messageAtIndex:indexPath.row];
|
||||
cell.date = message.date;
|
||||
|
||||
if (message.userMessage) {
|
||||
cell.style = BITFeedbackListViewCellStyleNormal;
|
||||
if ([self.manager requireUserName] == BITFeedbackUserDataElementRequired ||
|
||||
([self.manager requireUserName] == BITFeedbackUserDataElementOptional && [self.manager userName] != nil)
|
||||
) {
|
||||
cell.name = [self.manager userName];
|
||||
} else {
|
||||
cell.name = BITHockeyLocalizedString(@"HockeyFeedbackListMessageUserNameNotSet");
|
||||
}
|
||||
} else {
|
||||
cell.style = BITFeedbackListViewCellStyleRepsonse;
|
||||
if (message.name && [message.name length] > 0) {
|
||||
cell.name = message.name;
|
||||
} else {
|
||||
cell.name = BITHockeyLocalizedString(@"HockeyFeedbackListMessageResponseNameNotSet");
|
||||
}
|
||||
}
|
||||
|
||||
if (message.text) {
|
||||
cell.text = message.text;
|
||||
} else {
|
||||
cell.text = @"";
|
||||
}
|
||||
cell.message = message;
|
||||
cell.labelText.delegate = self;
|
||||
cell.labelText.userInteractionEnabled = YES;
|
||||
|
||||
UIView *lineView1 = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, cell.contentView.bounds.size.width, 1)] autorelease];
|
||||
lineView1.backgroundColor = BORDER_COLOR1;
|
||||
@ -468,8 +448,13 @@
|
||||
|
||||
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
if (editingStyle == UITableViewCellEditingStyleDelete) {
|
||||
NSLog(@"%i %i", indexPath.section, indexPath.row);
|
||||
if ([_manager deleteMessageAtIndex:indexPath.row]) {
|
||||
[tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
|
||||
if ([_manager numberOfMessages] > 0) {
|
||||
[tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
|
||||
} else {
|
||||
[tableView reloadData];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -488,15 +473,23 @@
|
||||
BITFeedbackMessage *message = [self.manager messageAtIndex:indexPath.row];
|
||||
if (!message) return 44;
|
||||
|
||||
return [BITFeedbackListViewCell heightForRowWithText:message.text tableViewWidth:self.view.frame.size.width];
|
||||
return [BITFeedbackListViewCell heightForRowWithMessage:message tableViewWidth:self.view.frame.size.width];
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - UIAlertViewDelegate
|
||||
|
||||
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
|
||||
if (buttonIndex == [alertView firstOtherButtonIndex]) {
|
||||
[self deleteAllMessages];
|
||||
if (buttonIndex == alertView.cancelButtonIndex) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ([alertView tag] == 0) {
|
||||
if (buttonIndex == [alertView firstOtherButtonIndex]) {
|
||||
[self deleteAllMessages];
|
||||
}
|
||||
} else {
|
||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:alertView.title]];
|
||||
}
|
||||
}
|
||||
|
||||
@ -504,10 +497,45 @@
|
||||
#pragma mark - UIActionSheetDelegate
|
||||
|
||||
- (void)actionSheet:(UIActionSheet *)actionSheet didDismissWithButtonIndex:(NSInteger)buttonIndex {
|
||||
if (buttonIndex == [actionSheet destructiveButtonIndex]) {
|
||||
[self deleteAllMessages];
|
||||
if (buttonIndex == actionSheet.cancelButtonIndex) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ([actionSheet tag] == 0) {
|
||||
if (buttonIndex == [actionSheet destructiveButtonIndex]) {
|
||||
[self deleteAllMessages];
|
||||
}
|
||||
} else {
|
||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:actionSheet.title]];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - BITAttributedLabelDelegate
|
||||
|
||||
- (void)attributedLabel:(BITAttributedLabel *)label didSelectLinkWithURL:(NSURL *)url {
|
||||
if (UI_USER_INTERFACE_IDIOM() != UIUserInterfaceIdiomPad) {
|
||||
UIActionSheet *linkAction = [[UIActionSheet alloc] initWithTitle:[url absoluteString]
|
||||
delegate:self
|
||||
cancelButtonTitle:BITHockeyLocalizedString(@"HockeyFeedbackListCancelOpenLink")
|
||||
destructiveButtonTitle:nil
|
||||
otherButtonTitles:BITHockeyLocalizedString(@"HockeyFeedbackListOpenLinkInSafari"), nil
|
||||
];
|
||||
[linkAction setTag:1];
|
||||
[linkAction setActionSheetStyle:UIActionSheetStyleBlackTranslucent];
|
||||
[linkAction showInView:self.view];
|
||||
[linkAction release];
|
||||
} else {
|
||||
UIAlertView *linkAction = [[UIAlertView alloc] initWithTitle:[url absoluteString]
|
||||
message:nil
|
||||
delegate:self
|
||||
cancelButtonTitle:BITHockeyLocalizedString(@"HockeyFeedbackListCancelOpenLink")
|
||||
otherButtonTitles:BITHockeyLocalizedString(@"HockeyFeedbackListOpenLinkInSafari"), nil];
|
||||
|
||||
[linkAction setTag:1];
|
||||
[linkAction show];
|
||||
[linkAction release];
|
||||
}
|
||||
}
|
||||
|
||||
@end
|
||||
|
@ -799,6 +799,7 @@
|
||||
|
||||
// app defined user data may have changed, update it
|
||||
[self updateAppDefinedUserData];
|
||||
[self saveMessages];
|
||||
|
||||
NSArray *pendingMessages = [self messagesWithStatus:BITFeedbackMessageStatusSendPending];
|
||||
|
||||
|
@ -39,7 +39,7 @@
|
||||
_text = nil;
|
||||
_name = nil;
|
||||
_email = nil;
|
||||
_date = nil;
|
||||
_date = [[NSDate alloc] init];
|
||||
_token = nil;
|
||||
_id = [[NSNumber alloc] initWithInteger:0];
|
||||
_status = BITFeedbackMessageStatusSendPending;
|
||||
|
@ -161,17 +161,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -183,6 +177,15 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -158,17 +158,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -180,6 +174,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
@ -159,17 +159,11 @@
|
||||
/* Button title for deleting all local messages*/
|
||||
"HockeyFeedbackListButonDeleteAllMessages" = "Delete All Messages";
|
||||
|
||||
/* User Name In Message If Name Not Set */
|
||||
"HockeyFeedbackListMessageUserNameNotSet" = "You";
|
||||
|
||||
/* Name In Message From Server If Name Not Set */
|
||||
"HockeyFeedbackListMessageResponseNameNotSet" = "Response";
|
||||
|
||||
/* Message pending to be send */
|
||||
"HockeyFeedbackListMessagePending" = "Pending";
|
||||
|
||||
|
||||
/* Delete All Messages Action Sheet */
|
||||
/* Delete All Messages Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListDeleteAllTitle" = "This will delete all messages on this device.";
|
||||
@ -181,6 +175,14 @@
|
||||
"HockeyFeedbackListDeleteAllCancel" = "Cancel";
|
||||
|
||||
|
||||
/* Open Link In Safari Action Sheet / Alert View */
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListCancelOpenLink" = "Cancel";
|
||||
|
||||
/* Title for the Action Sheet */
|
||||
"HockeyFeedbackListOpenLinkInSafari" = "Open Link in Safari";
|
||||
|
||||
/* UIActivity */
|
||||
|
||||
/* Activity Sharing Button Title, App Name will be inserted */
|
||||
|
Loading…
x
Reference in New Issue
Block a user