Skip to content

Commit c91c615

Browse files
committed
Fixing carousel width for fullbleed IAMs
1 parent a51d2ec commit c91c615

File tree

3 files changed

+18
-4
lines changed

3 files changed

+18
-4
lines changed

iOS_SDK/OneSignalSDK/Source/OSInAppMessageView.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ NS_ASSUME_NONNULL_BEGIN
4949
- (void)loadReplacementURL:(NSURL *)url;
5050
- (void)loadedHtmlContent:(NSString *)html withBaseURL:(NSURL *)url;
5151
- (void)removeScriptMessageHandler;
52-
52+
- (void)setIsFullscreen:(BOOL)isFullscreen;
5353
@end
5454

5555
NS_ASSUME_NONNULL_END

iOS_SDK/OneSignalSDK/Source/OSInAppMessageView.m

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ @interface OSInAppMessageView () <UIScrollViewDelegate, WKUIDelegate, WKNavigati
3838
@property (strong, nonatomic, nonnull) OSInAppMessageInternal *message;
3939
@property (strong, nonatomic, nonnull) WKWebView *webView;
4040
@property (nonatomic) BOOL loaded;
41-
41+
@property (nonatomic) BOOL isFullscreen;
4242
@end
4343

4444

@@ -118,6 +118,16 @@ - (void)setupWebviewWithMessageHandler:(id<WKScriptMessageHandler>)handler {
118118
[self layoutIfNeeded];
119119
}
120120

121+
- (void)setIsFullscreen:(BOOL)isFullscreen {
122+
_isFullscreen = isFullscreen;
123+
CGRect mainBounds = UIScreen.mainScreen.bounds;
124+
if (!isFullscreen) {
125+
CGFloat marginSpacing = [OneSignalViewHelper sizeToScale:MESSAGE_MARGIN];
126+
mainBounds.size.width -= (2.0 * marginSpacing);
127+
}
128+
[self.webView setFrame:mainBounds];
129+
}
130+
121131
/*
122132
Method for resetting the height of the WebView so the JS can calculate the new height
123133
WebView will have margins accounted for on width, but height just needs to be phone height or larger
@@ -126,9 +136,12 @@ - (void)setupWebviewWithMessageHandler:(id<WKScriptMessageHandler>)handler {
126136
- (void)resetWebViewToMaxBoundsAndResizeHeight:(void (^) (NSNumber *newHeight)) completion {
127137
[self.webView removeConstraints:[self.webView constraints]];
128138

129-
CGFloat marginSpacing = [OneSignalViewHelper sizeToScale:MESSAGE_MARGIN];
139+
130140
CGRect mainBounds = UIScreen.mainScreen.bounds;
131-
mainBounds.size.width -= (2.0 * marginSpacing);
141+
if (!self.isFullscreen) {
142+
CGFloat marginSpacing = [OneSignalViewHelper sizeToScale:MESSAGE_MARGIN];
143+
mainBounds.size.width -= (2.0 * marginSpacing);
144+
}
132145

133146
[self.webView setFrame:mainBounds];
134147
[self.webView layoutIfNeeded];

iOS_SDK/OneSignalSDK/Source/OSInAppMessageViewController.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,7 @@ - (void)parseContentData:(NSDictionary *)data {
269269
if (self.isFullscreen) {
270270
self.pendingHTMLContent = [self setContentInsetsInHTML:self.pendingHTMLContent];
271271
}
272+
[self.messageView setIsFullscreen:self.isFullscreen];
272273
}
273274

274275
- (NSString *)setContentInsetsInHTML:(NSString *)html {

0 commit comments

Comments
 (0)