mirror of
https://github.com/vector-im/element-ios.git
synced 2024-09-30 16:22:39 +00:00
Merge remote-tracking branch 'origin/develop' into with-contacts
This commit is contained in:
commit
9aa4dcd5a6
4 changed files with 44 additions and 20 deletions
|
@ -384,6 +384,8 @@ static NSMutableDictionary* uploadTableById = nil;
|
|||
}
|
||||
|
||||
mediaCachePath = nil;
|
||||
// force to recompute the cache size at next cacheSize call
|
||||
storageCacheSize = 0;
|
||||
}
|
||||
|
||||
+ (NSString*)getCachePath {
|
||||
|
|
|
@ -1151,33 +1151,34 @@
|
|||
<outlet property="settingTextField" destination="am8-vZ-baW" id="Wnw-CQ-Pe5"/>
|
||||
</connections>
|
||||
</tableViewCell>
|
||||
<tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="SettingsCellWithLabelAndSilder" rowHeight="66" id="QHY-hk-WMS" customClass="SettingsCellWithLabelAndSlider">
|
||||
<tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="SettingsCellWithLabelAndSilder" rowHeight="88" id="QHY-hk-WMS" customClass="SettingsCellWithLabelAndSlider">
|
||||
<rect key="frame" x="0.0" y="0.0" width="600" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="QHY-hk-WMS" id="AJT-tP-w9Q">
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" preferredMaxLayoutWidth="584" translatesAutoresizingMaskIntoConstraints="NO" id="cpJ-Gb-hqD">
|
||||
<rect key="frame" x="8" y="0.0" width="584" height="21"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<rect key="frame" x="8" y="8" width="584" height="34"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="34" id="IuS-DP-f6G"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="0.5" minValue="0.0" maxValue="1" translatesAutoresizingMaskIntoConstraints="NO" id="pc0-6Y-bpz">
|
||||
<rect key="frame" x="6" y="31" width="588" height="31"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<rect key="frame" x="6" y="49" width="588" height="31"/>
|
||||
<color key="minimumTrackTintColor" red="1" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<color key="maximumTrackTintColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<color key="maximumTrackTintColor" red="0.0" green="0.47843137250000001" blue="1" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<connections>
|
||||
<action selector="onSliderValueChange:" destination="1TJ-Md-cjN" eventType="valueChanged" id="3CN-Yi-B4y"/>
|
||||
</connections>
|
||||
</slider>
|
||||
</subviews>
|
||||
<constraints>
|
||||
<constraint firstItem="cpJ-Gb-hqD" firstAttribute="top" secondItem="AJT-tP-w9Q" secondAttribute="topMargin" constant="-8" id="0M8-6y-nCA"/>
|
||||
<constraint firstItem="cpJ-Gb-hqD" firstAttribute="top" secondItem="AJT-tP-w9Q" secondAttribute="topMargin" id="0M8-6y-nCA"/>
|
||||
<constraint firstItem="cpJ-Gb-hqD" firstAttribute="leading" secondItem="AJT-tP-w9Q" secondAttribute="leadingMargin" id="78n-1f-l1M"/>
|
||||
<constraint firstAttribute="bottomMargin" secondItem="pc0-6Y-bpz" secondAttribute="bottom" constant="-4" id="SFS-Sa-IVI"/>
|
||||
<constraint firstAttribute="bottomMargin" secondItem="pc0-6Y-bpz" secondAttribute="bottom" id="SFS-Sa-IVI"/>
|
||||
<constraint firstItem="pc0-6Y-bpz" firstAttribute="leading" secondItem="AJT-tP-w9Q" secondAttribute="leadingMargin" id="SL5-aC-2l1"/>
|
||||
<constraint firstAttribute="trailingMargin" secondItem="pc0-6Y-bpz" secondAttribute="trailing" id="W7H-4p-ebK"/>
|
||||
<constraint firstAttribute="trailingMargin" secondItem="cpJ-Gb-hqD" secondAttribute="trailing" id="Xxa-YE-kZ3"/>
|
||||
|
|
|
@ -1395,14 +1395,19 @@ NSString *const kCmdResetUserPowerLevel = @"/deop";
|
|||
return;
|
||||
}
|
||||
|
||||
UIEdgeInsets insets = self.messagesTableView.contentInset;
|
||||
// Handle portrait/landscape mode
|
||||
insets.bottom = (endRect.origin.y == 0) ? endRect.size.width : endRect.size.height;
|
||||
CGFloat keyboardHeight = (endRect.origin.y == 0) ? endRect.size.width : endRect.size.height;
|
||||
|
||||
// bottom view offset
|
||||
// Don't forget the offset related to tabBar
|
||||
CGFloat nextBottomViewContanst = insets.bottom - [AppDelegate theDelegate].masterTabBarController.tabBar.frame.size.height;
|
||||
|
||||
CGFloat nextBottomViewContanst = keyboardHeight - [AppDelegate theDelegate].masterTabBarController.tabBar.frame.size.height;
|
||||
|
||||
// the tableview bottom inset must also be updated
|
||||
UIEdgeInsets insets = self.messagesTableView.contentInset;
|
||||
// insets.bottom is the bottom part of the tableview content size which is not displayed
|
||||
// The bottom margin is equal to the keyboard height + controlview part which is greather than the tableview bottom margin.
|
||||
// The tableview bottom margin has the same value as the defauft bottom view height;
|
||||
insets.bottom = keyboardHeight + self.controlView.frame.size.height - defaultMessagesTableViewBottomConstraint;
|
||||
|
||||
// get the animation info
|
||||
NSNumber *curveValue = [[notif userInfo] objectForKey:UIKeyboardAnimationCurveUserInfoKey];
|
||||
UIViewAnimationCurve animationCurve = curveValue.intValue;
|
||||
|
@ -1483,7 +1488,10 @@ NSString *const kCmdResetUserPowerLevel = @"/deop";
|
|||
}
|
||||
|
||||
UIEdgeInsets insets = self.messagesTableView.contentInset;
|
||||
insets.bottom = self.controlView.frame.size.height;
|
||||
// insets.bottom is the bottom part of the tableview content size which is not displayed
|
||||
// The bottom margin is equal to the tabbar height + controlview part which is greather than the tableview bottom margin.
|
||||
// The tableview bottom margin has the same value as the defauft bottom view height.
|
||||
insets.bottom = [AppDelegate theDelegate].masterTabBarController.tabBar.frame.size.height + (self.controlView.frame.size.height - defaultMessagesTableViewBottomConstraint);
|
||||
|
||||
isKeyboardDisplayed = NO;
|
||||
|
||||
|
|
|
@ -574,9 +574,23 @@ NSString* const kCommandsDescriptionText = @"The following commands are availabl
|
|||
|
||||
- (IBAction)onSliderValueChange:(id)sender {
|
||||
if (sender == maxCacheSizeCell.settingSlider) {
|
||||
[[MatrixHandler sharedHandler] setCurrentMaxCachesSize:maxCacheSizeCell.settingSlider.value];
|
||||
|
||||
maxCacheSizeCell.settingLabel.text = [NSString stringWithFormat:@"Set the maximum cache size (current %@)", [NSByteCountFormatter stringFromByteCount:[MatrixHandler sharedHandler].currentMaxCachesSize countStyle:NSByteCountFormatterCountStyleFile]];
|
||||
MatrixHandler* mxHandler = [MatrixHandler sharedHandler];
|
||||
UISlider* slider = maxCacheSizeCell.settingSlider;
|
||||
|
||||
// check if the upper bounds have been updated
|
||||
if (slider.maximumValue != mxHandler.maxAllowedCachesSize) {
|
||||
slider.maximumValue = mxHandler.maxAllowedCachesSize;
|
||||
}
|
||||
|
||||
// check if the value does not exceed the bounds
|
||||
if (slider.value < mxHandler.minCachesSize) {
|
||||
slider.value = mxHandler.minCachesSize;
|
||||
}
|
||||
|
||||
[[MatrixHandler sharedHandler] setCurrentMaxCachesSize:slider.value];
|
||||
|
||||
maxCacheSizeCell.settingLabel.text = [NSString stringWithFormat:@"Maximum cache size (%@)", [NSByteCountFormatter stringFromByteCount:mxHandler.currentMaxCachesSize countStyle:NSByteCountFormatterCountStyleFile]];
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -722,7 +736,7 @@ NSString* const kCommandsDescriptionText = @"The following commands are availabl
|
|||
return 44;
|
||||
} else if (indexPath.section == SETTINGS_SECTION_ROOMS_INDEX) {
|
||||
if (indexPath.row == SETTINGS_SECTION_ROOMS_SET_CACHE_SIZE_INDEX) {
|
||||
return 60;
|
||||
return 88;
|
||||
}
|
||||
return 44;
|
||||
} else if (indexPath.section == SETTINGS_SECTION_CONFIGURATION_INDEX) {
|
||||
|
@ -833,11 +847,10 @@ NSString* const kCommandsDescriptionText = @"The following commands are availabl
|
|||
cell.selectionStyle = UITableViewCellSelectionStyleNone;
|
||||
maxCacheSizeCell = (SettingsCellWithLabelAndSlider*)cell;
|
||||
|
||||
maxCacheSizeCell.settingSlider.minimumValue = [MatrixHandler sharedHandler].minCachesSize;
|
||||
maxCacheSizeCell.settingSlider.maximumValue = [MatrixHandler sharedHandler].maxAllowedCachesSize;
|
||||
maxCacheSizeCell.settingSlider.minimumValue = 0;
|
||||
maxCacheSizeCell.settingSlider.value = [MatrixHandler sharedHandler].currentMaxCachesSize;
|
||||
|
||||
maxCacheSizeCell.settingLabel.text = [NSString stringWithFormat:@"Set the maximum cache size (current %@)", [NSByteCountFormatter stringFromByteCount:[MatrixHandler sharedHandler].currentMaxCachesSize countStyle:NSByteCountFormatterCountStyleFile]];
|
||||
[self onSliderValueChange:maxCacheSizeCell.settingSlider];
|
||||
|
||||
} else {
|
||||
SettingsTableCellWithSwitch *roomsSettingCell = [tableView dequeueReusableCellWithIdentifier:@"SettingsCellWithSwitch" forIndexPath:indexPath];
|
||||
|
|
Loading…
Reference in a new issue