diff --git a/iphone/Maps/Classes/MWMBasePlacePageView.mm b/iphone/Maps/Classes/MWMBasePlacePageView.mm index f97428aba2..4483aa4866 100644 --- a/iphone/Maps/Classes/MWMBasePlacePageView.mm +++ b/iphone/Maps/Classes/MWMBasePlacePageView.mm @@ -44,7 +44,8 @@ vector const kSectionMetadataCellTypes { }; vector const kSectionEditingCellTypes { - MWMPlacePageCellTypeEditButton + MWMPlacePageCellTypeEditButton, + MWMPlacePageCellTypeReportButton }; using TCellTypesSectionMap = pair, PlacePageSection>; @@ -65,7 +66,8 @@ MWMPlacePageCellTypeValueMap const kCellType2ReuseIdentifier{ {MWMPlacePageCellTypePhoneNumber, "PlacePageLinkCell"}, {MWMPlacePageCellTypeOpenHours, "MWMPlacePageOpeningHoursCell"}, {MWMPlacePageCellTypeBookmark, "PlacePageBookmarkCell"}, - {MWMPlacePageCellTypeEditButton, "MWMPlacePageButtonCell"}}; + {MWMPlacePageCellTypeEditButton, "MWMPlacePageButtonCell"}, + {MWMPlacePageCellTypeReportButton, "MWMPlacePageButtonCell"}}; NSString * reuseIdentifier(MWMPlacePageCellType cellType) { @@ -444,6 +446,9 @@ enum class AttributePosition MWMPlacePageCellType const cellType = [self cellTypeForIndexPath:indexPath]; switch (cellType) { + case MWMPlacePageCellTypeReportButton: + [static_cast(cell) config:self.ownerPlacePage isReport:YES]; + break; case MWMPlacePageCellTypeBookmark: [(MWMPlacePageBookmarkCell *)cell config:self.ownerPlacePage forHeight:NO]; break; @@ -451,7 +456,7 @@ enum class AttributePosition [(MWMPlacePageOpeningHoursCell *)cell configWithDelegate:self info:[entity getCellValue:cellType]]; break; case MWMPlacePageCellTypeEditButton: - [(MWMPlacePageButtonCell *)cell config:self.ownerPlacePage]; + [static_cast(cell) config:self.ownerPlacePage isReport:NO]; break; default: { diff --git a/iphone/Maps/Classes/MWMPlacePage.h b/iphone/Maps/Classes/MWMPlacePage.h index f7c531c692..9087d2ddf9 100644 --- a/iphone/Maps/Classes/MWMPlacePage.h +++ b/iphone/Maps/Classes/MWMPlacePage.h @@ -28,6 +28,7 @@ - (void)changeBookmarkCategory; - (void)changeBookmarkDescription; - (void)editPlace; +- (void)reportProblem; - (void)share; - (void)route; - (void)reloadBookmark; diff --git a/iphone/Maps/Classes/MWMPlacePage.mm b/iphone/Maps/Classes/MWMPlacePage.mm index d50e6b7c9c..d4ca585fff 100644 --- a/iphone/Maps/Classes/MWMPlacePage.mm +++ b/iphone/Maps/Classes/MWMPlacePage.mm @@ -138,6 +138,11 @@ static NSString * const kPlacePageViewCenterKeyPath = @"center"; [self.manager editPlace]; } +- (void)reportProblem +{ + [self.manager reportProblem]; +} + - (void)share { [self.manager share]; diff --git a/iphone/Maps/Classes/MWMPlacePageButtonCell.h b/iphone/Maps/Classes/MWMPlacePageButtonCell.h index 213eb5875b..2fb8e4993b 100644 --- a/iphone/Maps/Classes/MWMPlacePageButtonCell.h +++ b/iphone/Maps/Classes/MWMPlacePageButtonCell.h @@ -2,6 +2,6 @@ @interface MWMPlacePageButtonCell : UITableViewCell -- (void)config:(MWMPlacePage *)placePage; +- (void)config:(MWMPlacePage *)placePage isReport:(BOOL)isReport; @end diff --git a/iphone/Maps/Classes/MWMPlacePageButtonCell.mm b/iphone/Maps/Classes/MWMPlacePageButtonCell.mm index 0b47ebc8d3..8dcbc4d435 100644 --- a/iphone/Maps/Classes/MWMPlacePageButtonCell.mm +++ b/iphone/Maps/Classes/MWMPlacePageButtonCell.mm @@ -2,23 +2,33 @@ #import "MWMPlacePageButtonCell.h" #import "Statistics.h" +#import "UIColor+MapsMeColor.h" + @interface MWMPlacePageButtonCell () @property (weak, nonatomic) MWMPlacePage * placePage; +@property (weak, nonatomic) IBOutlet UIButton * titleButton; +@property (nonatomic) BOOL isReport; @end @implementation MWMPlacePageButtonCell -- (void)config:(MWMPlacePage *)placePage +- (void)config:(MWMPlacePage *)placePage isReport:(BOOL)isReport { self.placePage = placePage; + self.isReport = isReport; + [self.titleButton setTitleColor:isReport ? [UIColor red] : [UIColor linkBlue] forState:UIControlStateNormal]; + [self.titleButton setTitle:isReport ? L(@"report_problem") : L(@"edit_place") forState:UIControlStateNormal]; } -- (IBAction)editPlaceButtonTouchUpIndide +- (IBAction)buttonTap { - [[Statistics instance] logEvent:kStatEventName(kStatPlacePage, kStatEdit)]; - [self.placePage editPlace]; + [[Statistics instance] logEvent:kStatEventName(kStatPlacePage, self.isReport ? kStatReport : kStatEdit)]; + if (self.isReport) + [self.placePage reportProblem]; + else + [self.placePage editPlace]; } @end diff --git a/iphone/Maps/Classes/MWMPlacePageButtonCell.xib b/iphone/Maps/Classes/MWMPlacePageButtonCell.xib index 09607a5ca7..862e82614c 100644 --- a/iphone/Maps/Classes/MWMPlacePageButtonCell.xib +++ b/iphone/Maps/Classes/MWMPlacePageButtonCell.xib @@ -1,8 +1,8 @@ - + - + @@ -31,7 +31,7 @@ - + @@ -48,6 +48,9 @@ + + + diff --git a/iphone/Maps/Classes/MWMPlacePageEntity.h b/iphone/Maps/Classes/MWMPlacePageEntity.h index f13df96975..b5e4542a29 100644 --- a/iphone/Maps/Classes/MWMPlacePageEntity.h +++ b/iphone/Maps/Classes/MWMPlacePageEntity.h @@ -14,6 +14,7 @@ typedef NS_ENUM(NSUInteger, MWMPlacePageCellType) MWMPlacePageCellTypeCoordinate, MWMPlacePageCellTypeBookmark, MWMPlacePageCellTypeEditButton, + MWMPlacePageCellTypeReportButton, MWMPlacePageCellTypeCategory, MWMPlacePageCellTypeName, MWMPlacePageCellTypeStreet, diff --git a/iphone/Maps/Classes/MWMPlacePageEntity.mm b/iphone/Maps/Classes/MWMPlacePageEntity.mm index bb47b01cb4..9f7297f32e 100644 --- a/iphone/Maps/Classes/MWMPlacePageEntity.mm +++ b/iphone/Maps/Classes/MWMPlacePageEntity.mm @@ -152,10 +152,12 @@ void initFieldsMap() case MWMPlacePageCellTypeCoordinate: return [self coordinate]; case MWMPlacePageCellTypeBookmark: - return m_info.IsBookmark() ? @"haveValue" : nil; + return m_info.IsBookmark() ? @"" : nil; case MWMPlacePageCellTypeEditButton: // TODO(Vlad): It's a really strange way to "display" cell if returned text is not nil. - return m_info.IsEditable() ? @"Refactor Me" : nil; + return m_info.IsEditable() ? @"" : nil; + case MWMPlacePageCellTypeReportButton: + return m_info.IsFeature() ? @"" : nil; default: { auto const it = m_values.find(cellType); diff --git a/iphone/Maps/Classes/MWMPlacePageViewManager.h b/iphone/Maps/Classes/MWMPlacePageViewManager.h index 6933f38876..b581671df3 100644 --- a/iphone/Maps/Classes/MWMPlacePageViewManager.h +++ b/iphone/Maps/Classes/MWMPlacePageViewManager.h @@ -25,6 +25,7 @@ - (void)routeTo; - (void)share; - (void)editPlace; +- (void)reportProblem; - (void)addBookmark; - (void)removeBookmark; - (void)apiBack; diff --git a/iphone/Maps/Classes/MWMPlacePageViewManager.mm b/iphone/Maps/Classes/MWMPlacePageViewManager.mm index cfca0c7c0b..c330b110ef 100644 --- a/iphone/Maps/Classes/MWMPlacePageViewManager.mm +++ b/iphone/Maps/Classes/MWMPlacePageViewManager.mm @@ -246,6 +246,11 @@ extern NSString * const kBookmarksChangedNotification; [(MapViewController *)self.ownerViewController openEditor]; } +- (void)reportProblem +{ + [static_cast(self.ownerViewController) showReportController]; +} + - (void)addBookmark { [[Statistics instance] logEvent:kStatEventName(kStatPlacePage, kStatBookmarks) diff --git a/iphone/Maps/Classes/MWMReportBaseController.h b/iphone/Maps/Classes/MWMReportBaseController.h new file mode 100644 index 0000000000..86505c027c --- /dev/null +++ b/iphone/Maps/Classes/MWMReportBaseController.h @@ -0,0 +1,8 @@ +#import "MWMTableViewController.h" + +@interface MWMReportBaseController : MWMTableViewController + +- (void)configNavBar NS_REQUIRES_SUPER; +- (void)send NS_REQUIRES_SUPER; + +@end diff --git a/iphone/Maps/Classes/MWMReportBaseController.m b/iphone/Maps/Classes/MWMReportBaseController.m new file mode 100644 index 0000000000..4fa1ac02c8 --- /dev/null +++ b/iphone/Maps/Classes/MWMReportBaseController.m @@ -0,0 +1,16 @@ +#import "MWMReportBaseController.h" + +@implementation MWMReportBaseController + +- (void)configNavBar +{ + self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:L(@"send") + style:UIBarButtonItemStylePlain target:self action:@selector(send)]; +} + +- (void)send +{ + [self.navigationController popToRootViewControllerAnimated:YES]; +} + +@end diff --git a/iphone/Maps/Classes/MWMReportProblemController.h b/iphone/Maps/Classes/MWMReportProblemController.h new file mode 100644 index 0000000000..2728c1f9f9 --- /dev/null +++ b/iphone/Maps/Classes/MWMReportProblemController.h @@ -0,0 +1,5 @@ +#import "MWMReportBaseController.h" + +@interface MWMReportProblemController : MWMReportBaseController + +@end diff --git a/iphone/Maps/Classes/MWMReportProblemController.mm b/iphone/Maps/Classes/MWMReportProblemController.mm new file mode 100644 index 0000000000..1ab28d49e8 --- /dev/null +++ b/iphone/Maps/Classes/MWMReportProblemController.mm @@ -0,0 +1,40 @@ +#import "MWMReportProblemController.h" +#import "SelectableCell.h" + +@interface MWMReportProblemController () + +@property (weak, nonatomic) IBOutlet SelectableCell * placeDoesntExistCell; +@property (nonatomic) BOOL isCellSelected; + +@end + +@implementation MWMReportProblemController + +- (void)viewDidLoad +{ + [super viewDidLoad]; + [self configNavBar]; +} + +- (void)configNavBar +{ + [super configNavBar]; + self.title = L(@"problem"); +} + +#pragma mark - UITableView + +- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath +{ + UITableViewCell * cell = [tableView cellForRowAtIndexPath:indexPath]; + [cell setSelected:NO animated:YES]; + + if (indexPath.row > 0) + return; + + self.isCellSelected = !self.isCellSelected; + self.placeDoesntExistCell.accessoryType = self.isCellSelected ? UITableViewCellAccessoryCheckmark : + UITableViewCellAccessoryNone; +} + +@end diff --git a/iphone/Maps/Classes/MWMReportProblemExtendedController.h b/iphone/Maps/Classes/MWMReportProblemExtendedController.h new file mode 100644 index 0000000000..2b59ea1670 --- /dev/null +++ b/iphone/Maps/Classes/MWMReportProblemExtendedController.h @@ -0,0 +1,5 @@ +#import "MWMReportBaseController.h" + +@interface MWMReportProblemExtendedController : MWMReportBaseController + +@end diff --git a/iphone/Maps/Classes/MWMReportProblemExtendedController.mm b/iphone/Maps/Classes/MWMReportProblemExtendedController.mm new file mode 100644 index 0000000000..0feeb07d82 --- /dev/null +++ b/iphone/Maps/Classes/MWMReportProblemExtendedController.mm @@ -0,0 +1,31 @@ +#import "MWMReportProblemExtendedController.h" + +@interface MWMReportProblemExtendedController () + +@property (weak, nonatomic) IBOutlet UITextView * textView; + +@end + +@implementation MWMReportProblemExtendedController + +- (void)viewDidLoad +{ + [super viewDidLoad]; + [self configNavBar]; +} + +- (void)configNavBar +{ + [super configNavBar]; + self.title = L(@"other"); +} + +#pragma mark - UITableView + +- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section +{ + NSAssert(section == 0, @"Invalid section!"); + return L(@"report_problem_extended_description"); +} + +@end diff --git a/iphone/Maps/Classes/MapViewController.h b/iphone/Maps/Classes/MapViewController.h index 928bb807b7..ba2e833ab7 100644 --- a/iphone/Maps/Classes/MapViewController.h +++ b/iphone/Maps/Classes/MapViewController.h @@ -33,6 +33,7 @@ namespace search { struct AddressInfo; } - (void)openBookmarks; - (void)openMapsDownloader; - (void)openEditor; +- (void)showReportController; - (void)refreshAd; diff --git a/iphone/Maps/Classes/MapViewController.mm b/iphone/Maps/Classes/MapViewController.mm index 59d251bceb..ff776de864 100644 --- a/iphone/Maps/Classes/MapViewController.mm +++ b/iphone/Maps/Classes/MapViewController.mm @@ -71,6 +71,7 @@ NSString * const kDownloaderSegue = @"Map2MapDownloaderSegue"; NSString * const kMigrationSegue = @"Map2MigrationSegue"; NSString * const kEditorSegue = @"Map2EditorSegue"; NSString * const kUDViralAlertWasShown = @"ViralAlertWasShown"; +NSString * const kReportSegue = @"Map2ReportSegue"; } // namespace @interface NSValueWrapper : NSObject @@ -551,10 +552,14 @@ NSString * const kUDViralAlertWasShown = @"ViralAlertWasShown"; - (void)openEditor { - [[Statistics instance] logEvent:kStatEventName(kStatPlacePage, kStatEdit)]; [self performSegueWithIdentifier:kEditorSegue sender:self.controlsManager.placePageEntity]; } +- (void)showReportController +{ + [self performSegueWithIdentifier:kReportSegue sender:nil]; +} + - (void)processMyPositionStateModeEvent:(location::EMyPositionMode)mode { [m_predictor setMode:mode]; diff --git a/iphone/Maps/Maps.xcodeproj/project.pbxproj b/iphone/Maps/Maps.xcodeproj/project.pbxproj index 029576c179..808ed47c4b 100644 --- a/iphone/Maps/Maps.xcodeproj/project.pbxproj +++ b/iphone/Maps/Maps.xcodeproj/project.pbxproj @@ -656,6 +656,12 @@ F607C1891C032A8800B53A87 /* resources-hdpi_dark in Resources */ = {isa = PBXBuildFile; fileRef = F607C1841C032A8800B53A87 /* resources-hdpi_dark */; }; F607C18A1C032A8800B53A87 /* resources-hdpi_dark in Resources */ = {isa = PBXBuildFile; fileRef = F607C1841C032A8800B53A87 /* resources-hdpi_dark */; }; F607C18E1C047FDC00B53A87 /* MWMSegue.mm in Sources */ = {isa = PBXBuildFile; fileRef = F607C18D1C047FDC00B53A87 /* MWMSegue.mm */; }; + F60F02E11C904E08003A0AF6 /* MWMReportProblemController.mm in Sources */ = {isa = PBXBuildFile; fileRef = F60F02E01C904E08003A0AF6 /* MWMReportProblemController.mm */; }; + F60F02E41C904E3E003A0AF6 /* MWMReportProblemExtendedController.mm in Sources */ = {isa = PBXBuildFile; fileRef = F60F02E31C904E3E003A0AF6 /* MWMReportProblemExtendedController.mm */; }; + F60F02E51C904E3E003A0AF6 /* MWMReportProblemExtendedController.mm in Sources */ = {isa = PBXBuildFile; fileRef = F60F02E31C904E3E003A0AF6 /* MWMReportProblemExtendedController.mm */; }; + F60F02E61C904E86003A0AF6 /* MWMReportProblemController.mm in Sources */ = {isa = PBXBuildFile; fileRef = F60F02E01C904E08003A0AF6 /* MWMReportProblemController.mm */; }; + F60F02E91C904F40003A0AF6 /* MWMReportBaseController.m in Sources */ = {isa = PBXBuildFile; fileRef = F60F02E81C904F40003A0AF6 /* MWMReportBaseController.m */; }; + F60F02EA1C904F40003A0AF6 /* MWMReportBaseController.m in Sources */ = {isa = PBXBuildFile; fileRef = F60F02E81C904F40003A0AF6 /* MWMReportBaseController.m */; }; F61579341AC2CE9A0032D8E9 /* MWMRateAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F61579331AC2CE9A0032D8E9 /* MWMRateAlert.mm */; }; F61579361AC2CEB60032D8E9 /* MWMRateAlert.xib in Resources */ = {isa = PBXBuildFile; fileRef = F61579351AC2CEB60032D8E9 /* MWMRateAlert.xib */; }; F6172FA51BBD5A3E0081D325 /* MWMiPadRoutePreview.xib in Resources */ = {isa = PBXBuildFile; fileRef = F6172FA41BBD5A3E0081D325 /* MWMiPadRoutePreview.xib */; }; @@ -1293,6 +1299,12 @@ F607C1841C032A8800B53A87 /* resources-hdpi_dark */ = {isa = PBXFileReference; lastKnownFileType = folder; name = "resources-hdpi_dark"; path = "../../data/resources-hdpi_dark"; sourceTree = ""; }; F607C18C1C047FDC00B53A87 /* MWMSegue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMSegue.h; sourceTree = ""; }; F607C18D1C047FDC00B53A87 /* MWMSegue.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMSegue.mm; sourceTree = ""; }; + F60F02DF1C904E08003A0AF6 /* MWMReportProblemController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMReportProblemController.h; sourceTree = ""; }; + F60F02E01C904E08003A0AF6 /* MWMReportProblemController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMReportProblemController.mm; sourceTree = ""; }; + F60F02E21C904E3E003A0AF6 /* MWMReportProblemExtendedController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMReportProblemExtendedController.h; sourceTree = ""; }; + F60F02E31C904E3E003A0AF6 /* MWMReportProblemExtendedController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMReportProblemExtendedController.mm; sourceTree = ""; }; + F60F02E71C904F40003A0AF6 /* MWMReportBaseController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMReportBaseController.h; sourceTree = ""; }; + F60F02E81C904F40003A0AF6 /* MWMReportBaseController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWMReportBaseController.m; sourceTree = ""; }; F61579321AC2CE9A0032D8E9 /* MWMRateAlert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMRateAlert.h; sourceTree = ""; }; F61579331AC2CE9A0032D8E9 /* MWMRateAlert.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMRateAlert.mm; sourceTree = ""; }; F61579351AC2CEB60032D8E9 /* MWMRateAlert.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMRateAlert.xib; sourceTree = ""; }; @@ -1627,6 +1639,7 @@ 080E96DDFE201D6D7F000001 /* Classes */ = { isa = PBXGroup; children = ( + F60F02DE1C904DE8003A0AF6 /* ReportProblem */, 34479C741C60C6130065D261 /* Framework */, 34CE8A641C7740CF00F4351A /* Storage */, 34ABA61D1C2D514A00FE1BEC /* Input Validators */, @@ -2487,6 +2500,19 @@ name = Segue; sourceTree = ""; }; + F60F02DE1C904DE8003A0AF6 /* ReportProblem */ = { + isa = PBXGroup; + children = ( + F60F02E71C904F40003A0AF6 /* MWMReportBaseController.h */, + F60F02E81C904F40003A0AF6 /* MWMReportBaseController.m */, + F60F02DF1C904E08003A0AF6 /* MWMReportProblemController.h */, + F60F02E01C904E08003A0AF6 /* MWMReportProblemController.mm */, + F60F02E21C904E3E003A0AF6 /* MWMReportProblemExtendedController.h */, + F60F02E31C904E3E003A0AF6 /* MWMReportProblemExtendedController.mm */, + ); + name = ReportProblem; + sourceTree = ""; + }; F613FA741AB330AF002394D4 /* MapViewController */ = { isa = PBXGroup; children = ( @@ -3446,6 +3472,7 @@ 34F9FB8B1C438ADB00F71201 /* MWMStreetEditorViewController.mm in Sources */, EED10A4511F78D120095FAD4 /* MapViewController.mm in Sources */, 34CCFDD11C21945500F28959 /* MWMPlacePageOpeningHoursDayView.mm in Sources */, + F60F02E41C904E3E003A0AF6 /* MWMReportProblemExtendedController.mm in Sources */, 3445CEAE1C2D9E08006F4226 /* MWMAuthorizationSignupViewController.mm in Sources */, F61579341AC2CE9A0032D8E9 /* MWMRateAlert.mm in Sources */, F6BB6CC61BB18C0900DF1DF2 /* MWMRoutePointCell.m in Sources */, @@ -3569,6 +3596,7 @@ 34BC72241B0DECAE0012A34B /* MWMMapViewControlsManager.mm in Sources */, F6B2E61F1C3D5F31005562DF /* MWMNightModeController.mm in Sources */, F6BD33791B62400E00F2CE18 /* MWMNavigationDashboard.mm in Sources */, + F60F02E91C904F40003A0AF6 /* MWMReportBaseController.m in Sources */, 347FD8891C60B2CE002FB65E /* MWMOpeningHoursTimeSpanTableViewCell.mm in Sources */, 974D041D1977DE430081D0A7 /* LocalNotificationManager.mm in Sources */, 97C98522186AE3CF00AF7E9E /* AppInfo.mm in Sources */, @@ -3594,6 +3622,7 @@ F64F4B6D1B46A51F0081A24A /* MWMDownloaderDialogCell.mm in Sources */, 3491E7CB1C06F1F10042FE24 /* MWMPlacePageButtonCell.mm in Sources */, 97508423199522D300A7457D /* SettingsAndMoreVC.mm in Sources */, + F60F02E11C904E08003A0AF6 /* MWMReportProblemController.mm in Sources */, 341F99D91C6B1165001C67B8 /* MWMMapDownloaderPlaceTableViewCell.mm in Sources */, 341F99D51C6B1165001C67B8 /* MWMMapDownloaderLargeCountryTableViewCell.mm in Sources */, 347FD86F1C60B2CE002FB65E /* MWMOpeningHoursAllDayTableViewCell.mm in Sources */, @@ -3692,6 +3721,7 @@ 3492CC131C6DF00F0057D8E8 /* (null) in Sources */, 6741A9D21BF340DE002C974C /* MWMBookmarkDescriptionViewController.mm in Sources */, 6741A9D31BF340DE002C974C /* MWMDownloadMapRequestView.mm in Sources */, + F60F02E61C904E86003A0AF6 /* MWMReportProblemController.mm in Sources */, 3476B8CC1BFDCB6700874594 /* MWMTTSSettingsViewController.mm in Sources */, 6741A9D41BF340DE002C974C /* MWMAlertViewController.mm in Sources */, 34C9BD0A1C6DBCDA000DC38D /* MWMNavigationController.mm in Sources */, @@ -3777,6 +3807,8 @@ 34CCFDE11C22A2EF00F28959 /* MWMPlacePageOpeningHoursCell.mm in Sources */, 6741AA0D1BF340DE002C974C /* LocalNotificationManager.mm in Sources */, 347FD88A1C60B2CE002FB65E /* MWMOpeningHoursTimeSpanTableViewCell.mm in Sources */, + F60F02E51C904E3E003A0AF6 /* MWMReportProblemExtendedController.mm in Sources */, + F60F02EA1C904F40003A0AF6 /* MWMReportBaseController.m in Sources */, 6741AA0E1BF340DE002C974C /* AppInfo.mm in Sources */, 6741AA0F1BF340DE002C974C /* MWMSearchHistoryMyPositionCell.mm in Sources */, 6741AA101BF340DE002C974C /* SelectableCell.mm in Sources */, diff --git a/iphone/Maps/Mapsme.storyboard b/iphone/Maps/Mapsme.storyboard index 7b20ab150d..24254e010e 100644 --- a/iphone/Maps/Mapsme.storyboard +++ b/iphone/Maps/Mapsme.storyboard @@ -35,6 +35,7 @@ + @@ -1716,6 +1717,155 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -3002,8 +3152,8 @@ the world. Join us! - - + +