Skip to content

Commit b291898

Browse files
committed
fix toolbar constraints and correctly size send button to fit text. close jessesquires#603
1 parent 5627228 commit b291898

File tree

4 files changed

+19
-14
lines changed

4 files changed

+19
-14
lines changed

JSQMessages.xcodeproj/project.pbxproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
88078A9D19D8FEB5005B4595 /* JSQMessagesMediaPlaceholderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 88078A9C19D8FEB5005B4595 /* JSQMessagesMediaPlaceholderView.m */; };
1313
88324C3419F6301C00BC732D /* JSQMessagesMediaViewBubbleImageMaskerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 88324C3319F6301C00BC732D /* JSQMessagesMediaViewBubbleImageMaskerTests.m */; };
1414
883C11781A09FB100092A16D /* JSQMessagesCellTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = 883C11771A09FB100092A16D /* JSQMessagesCellTextView.m */; };
15-
8841B88519F4988800EA16B6 /* JSQMessages.strings in Resources */ = {isa = PBXBuildFile; fileRef = 8841B88719F4988800EA16B6 /* JSQMessages.strings */; };
1615
88445B3119E0AE3F0014F889 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 88445B3019E0AE3F0014F889 /* UIKit.framework */; };
1716
88445B3319E0AE450014F889 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 88445B3219E0AE450014F889 /* Foundation.framework */; };
1817
88445B3519E0AE4A0014F889 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 88445B3419E0AE4A0014F889 /* CoreGraphics.framework */; };
@@ -104,6 +103,7 @@
104103
88A2601B19D8E45600924534 /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 88A2601A19D8E45600924534 /* Info.plist */; };
105104
88A901B619F618B100F99777 /* JSQMediaItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 88A901B519F618B100F99777 /* JSQMediaItem.m */; };
106105
88C4583019F5F7A0008FD427 /* JSQMessagesMediaViewBubbleImageMasker.m in Sources */ = {isa = PBXBuildFile; fileRef = 88C4582F19F5F7A0008FD427 /* JSQMessagesMediaViewBubbleImageMasker.m */; };
106+
88E4D7131A0DBD6B000CC061 /* JSQMessages.strings in Resources */ = {isa = PBXBuildFile; fileRef = 8841B88719F4988800EA16B6 /* JSQMessages.strings */; };
107107
94A4FA20C2FBD0D62614D5A8 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 97E6750B77E8A7042BA0754B /* libPods.a */; };
108108
/* End PBXBuildFile section */
109109

@@ -735,11 +735,11 @@
735735
isa = PBXResourcesBuildPhase;
736736
buildActionMask = 2147483647;
737737
files = (
738+
88E4D7131A0DBD6B000CC061 /* JSQMessages.strings in Resources */,
738739
886C33FF19F45E30006B4997 /* JSQMessagesViewController.podspec in Resources */,
739740
8861666D19F492B70025B958 /* JSQMessagesAssets.bundle in Resources */,
740741
88A25FCF19D8E01A00924534 /* JSQMessagesCollectionViewCellOutgoing.xib in Resources */,
741742
88A25FCD19D8E01A00924534 /* JSQMessagesCollectionViewCellIncoming.xib in Resources */,
742-
8841B88519F4988800EA16B6 /* JSQMessages.strings in Resources */,
743743
88A25FD619D8E01A00924534 /* JSQMessagesToolbarContentView.xib in Resources */,
744744
88A25F3A19D8DF2500924534 /* Images.xcassets in Resources */,
745745
88A25FBC19D8E01A00924534 /* JSQMessagesViewController.xib in Resources */,

JSQMessagesViewController/Factories/JSQMessagesToolbarButtonFactory.m

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,18 @@ + (UIButton *)defaultSendButtonItem
5858
sendButton.backgroundColor = [UIColor clearColor];
5959
sendButton.tintColor = [UIColor jsq_messageBubbleBlueColor];
6060

61+
CGFloat maxHeight = 32.0f;
62+
63+
CGRect sendTitleRect = [sendTitle boundingRectWithSize:CGSizeMake(CGFLOAT_MAX, maxHeight)
64+
options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading
65+
attributes:@{ NSFontAttributeName : sendButton.titleLabel.font }
66+
context:nil];
67+
68+
sendButton.frame = CGRectMake(0.0f,
69+
0.0f,
70+
CGRectGetWidth(CGRectIntegral(sendTitleRect)),
71+
maxHeight);
72+
6173
return sendButton;
6274
}
6375

JSQMessagesViewController/Views/JSQMessagesToolbarContentView.m

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
#import "UIView+JSQMessages.h"
2222

23-
const CGFloat kJSQMessagesToolbarContentViewHorizontalSpacingDefault = 4.0f;
23+
const CGFloat kJSQMessagesToolbarContentViewHorizontalSpacingDefault = 6.0f;
2424

2525

2626
@interface JSQMessagesToolbarContentView ()
@@ -113,10 +113,6 @@ - (void)setLeftBarButtonItem:(UIButton *)leftBarButtonItem
113113

114114
- (void)setLeftBarButtonItemWidth:(CGFloat)leftBarButtonItemWidth
115115
{
116-
self.leftBarButtonItem.frame = CGRectMake(0.0f,
117-
0.0f,
118-
leftBarButtonItemWidth,
119-
CGRectGetHeight(self.leftBarButtonContainerView.frame));
120116
self.leftBarButtonContainerViewWidthConstraint.constant = leftBarButtonItemWidth;
121117
[self setNeedsUpdateConstraints];
122118
}
@@ -152,10 +148,6 @@ - (void)setRightBarButtonItem:(UIButton *)rightBarButtonItem
152148

153149
- (void)setRightBarButtonItemWidth:(CGFloat)rightBarButtonItemWidth
154150
{
155-
self.rightBarButtonItem.frame = CGRectMake(0.0f,
156-
0.0f,
157-
rightBarButtonItemWidth,
158-
CGRectGetHeight(self.rightBarButtonContainerView.frame));
159151
self.rightBarButtonContainerViewWidthConstraint.constant = rightBarButtonItemWidth;
160152
[self setNeedsUpdateConstraints];
161153
}

JSQMessagesViewController/Views/JSQMessagesToolbarContentView.xib

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2-
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="6245" systemVersion="13F34" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES">
2+
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="6250" systemVersion="14A389" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES">
33
<dependencies>
4-
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="6238"/>
4+
<deployment identifier="iOS"/>
5+
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="6244"/>
56
</dependencies>
67
<objects>
78
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
@@ -55,7 +56,7 @@
5556
<outlet property="rightHorizontalSpacingConstraint" destination="ds6-61-GNv" id="ZQh-8M-QFs"/>
5657
<outlet property="textView" destination="dm4-NT-mvr" id="PFw-HO-oT8"/>
5758
</connections>
58-
<point key="canvasLocation" x="174" y="567"/>
59+
<point key="canvasLocation" x="268" y="548"/>
5960
</view>
6061
</objects>
6162
<simulatedMetricsContainer key="defaultSimulatedMetrics">

0 commit comments

Comments
 (0)