[ios] Bug fixes.

This commit is contained in:
Илья Гречухин 2015-12-30 18:41:55 +03:00 committed by Sergey Yershov
parent 7407f5fcf8
commit ddcad2a979
5 changed files with 49 additions and 33 deletions

View file

@ -70,27 +70,25 @@ WeekDayView getWeekDayView()
cd.mode = MWMPlacePageOpeningHoursDayViewModeRegular;
self.isClosed = oh.IsClosed(time(nullptr));
[self processSchedule];
BOOL const isExpanded = delegate.openingHoursCellExpanded;
self.middleSeparator.hidden = !isExpanded;
self.weekDaysView.hidden = !isExpanded;
self.editButton.hidden = !isExpanded;
self.expandImage.image = [UIImage imageNamed:isExpanded ? @"ic_arrow_gray_up" : @"ic_arrow_gray_down"];
[cd invalidate];
return;
}
cd.mode = MWMPlacePageOpeningHoursDayViewModeCompatibility;
[cd setCompatibilityText:info];
else
{
cd.mode = MWMPlacePageOpeningHoursDayViewModeCompatibility;
[cd setCompatibilityText:info];
}
BOOL const isExpanded = delegate.openingHoursCellExpanded;
self.middleSeparator.hidden = !isExpanded;
self.weekDaysView.hidden = !isExpanded;
self.editButton.hidden = !isExpanded;
self.expandImage.image = [UIImage imageNamed:isExpanded ? @"ic_arrow_gray_up" : @"ic_arrow_gray_down"];
}
else
{
cd.mode = MWMPlacePageOpeningHoursDayViewModeEmpty;
self.middleSeparator.hidden = YES;
self.weekDaysView.hidden = YES;
self.editButton.hidden = YES;
}
self.middleSeparator.hidden = YES;
self.weekDaysView.hidden = YES;
self.editButton.hidden = YES;
self.expandImage.hidden = YES;
[cd invalidate];
}
@ -193,9 +191,14 @@ WeekDayView getWeekDayView()
- (CGFloat)cellHeight
{
CGFloat height = self.currentDay.viewHeight;
BOOL const isRegular = (self.currentDay.mode == MWMPlacePageOpeningHoursDayViewModeRegular);
if (isRegular && self.delegate.openingHoursCellExpanded)
height += self.weekDaysViewHeight.constant + self.editButton.height;
if (self.delegate.openingHoursCellExpanded)
{
MWMPlacePageOpeningHoursDayViewMode const mode = self.currentDay.mode;
if (mode != MWMPlacePageOpeningHoursDayViewModeEmpty)
height += self.editButton.height;
if (mode == MWMPlacePageOpeningHoursDayViewModeRegular)
height += self.weekDaysViewHeight.constant;
}
return ceil(height);
}
@ -205,9 +208,8 @@ WeekDayView getWeekDayView()
{
switch (self.currentDay.mode) {
case MWMPlacePageOpeningHoursDayViewModeRegular:
[self.delegate setOpeningHoursCellExpanded:!self.delegate.openingHoursCellExpanded forCell:self];
break;
case MWMPlacePageOpeningHoursDayViewModeCompatibility:
[self.delegate setOpeningHoursCellExpanded:!self.delegate.openingHoursCellExpanded forCell:self];
break;
case MWMPlacePageOpeningHoursDayViewModeEmpty:
[self editButtonTap];

View file

@ -17,8 +17,8 @@
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="swk-um-XzG" customClass="MWMPlacePageOpeningHoursDayView">
<rect key="frame" x="0.0" y="0.0" width="320" height="126"/>
<subviews>
<label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" misplaced="YES" text="Mo-Su 11:00-24:00" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" preferredMaxLayoutWidth="228" translatesAutoresizingMaskIntoConstraints="NO" id="ZdV-4y-cz4">
<rect key="frame" x="60" y="53" width="228" height="21"/>
<label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Mo-Su 11:00-24:00" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" preferredMaxLayoutWidth="228" translatesAutoresizingMaskIntoConstraints="NO" id="ZdV-4y-cz4">
<rect key="frame" x="60" y="54" width="228" height="19"/>
<fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="16"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
@ -40,8 +40,8 @@
<userDefinedRuntimeAttribute type="string" keyPath="fontName" value="regular16"/>
</userDefinedRuntimeAttributes>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" misplaced="YES" text="10:00—20:00" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" preferredMaxLayoutWidth="140" translatesAutoresizingMaskIntoConstraints="NO" id="oTF-IZ-Un1">
<rect key="frame" x="166" y="12" width="140" height="20"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="10:00—20:00" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" preferredMaxLayoutWidth="140" translatesAutoresizingMaskIntoConstraints="NO" id="oTF-IZ-Un1">
<rect key="frame" x="166" y="12" width="140" height="19"/>
<constraints>
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="140" id="up3-Kv-Z1P"/>
</constraints>
@ -66,8 +66,8 @@
<userDefinedRuntimeAttribute type="string" keyPath="fontName" value="regular14"/>
</userDefinedRuntimeAttributes>
</label>
<view contentMode="scaleToFill" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="7Oa-hg-icC">
<rect key="frame" x="166" y="36" width="140" height="58"/>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="7Oa-hg-icC">
<rect key="frame" x="166" y="35" width="140" height="58"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<constraints>
<constraint firstAttribute="height" constant="58" id="RWf-JS-tim"/>

View file

@ -141,15 +141,16 @@
{
_mode = mode;
BOOL const isRegular = (mode == MWMPlacePageOpeningHoursDayViewModeRegular);
BOOL const isEmpty = (mode == MWMPlacePageOpeningHoursDayViewModeEmpty);
self.compatibilityLabel.hidden = isRegular;
self.label.hidden = !isRegular;
self.openTime.hidden = !isRegular;
self.breakLabel.hidden = !isRegular;
self.breaksHolder.hidden = !isRegular;
self.closedLabel.hidden = !isRegular;
self.expandImage.hidden = !isRegular;
self.expandImage.hidden = isEmpty;
if (mode == MWMPlacePageOpeningHoursDayViewModeEmpty)
if (isEmpty)
self.compatibilityLabel.text = L(@"add_opening_hours");
}

View file

@ -104,6 +104,7 @@ extern NSDictionary * const kMWMOpeningHoursEditorTableCells = @{
[self.model updateOpeningHours];
std::string str = self.openingHours.UTF8String;
// TODO (AlexZ): Store edited opening time
[self.navigationController popViewControllerAnimated:YES];
}
#pragma mark - Table
@ -219,6 +220,7 @@ extern NSDictionary * const kMWMOpeningHoursEditorTableCells = @{
self.model.isSimpleMode = isSimpleMode;
if (!isSimpleMode)
self.exampleExpanded = NO;
self.toggleModeButton.enabled = self.model.isSimpleModeCapable;
}
- (BOOL)isSimpleMode

View file

@ -161,11 +161,19 @@ using namespace osmoh;
{
id<MWMOpeningHoursModelProtocol> delegate = self.delegate;
NSString * oh = delegate.openingHours;
if (!oh)
isSimpleMode = YES;
if (_isSimpleMode == isSimpleMode)
return;
if (isSimpleMode && MakeTimeTableSet(osmoh::OpeningHours(oh.UTF8String), timeTableSet))
BOOL setSimple = NO;
if (isSimpleMode)
{
if (oh)
setSimple = MakeTimeTableSet(osmoh::OpeningHours(oh.UTF8String), timeTableSet);
else
setSimple = YES;
}
if (setSimple)
{
_isSimpleMode = YES;
delegate.tableView.hidden = NO;
@ -178,8 +186,11 @@ using namespace osmoh;
}
else
{
_isSimpleMode = NO;
[self updateOpeningHours];
if (_isSimpleMode)
{
[self updateOpeningHours];
_isSimpleMode = NO;
}
delegate.tableView.hidden = YES;
delegate.advancedEditor.hidden = NO;
[delegate.toggleModeButton setTitle:L(@"simple_mode") forState:UIControlStateNormal];