Skip to content

Commit

Permalink
Fixes the height issue for unread view
Browse files Browse the repository at this point in the history
  • Loading branch information
nithindavid committed Aug 2, 2021
1 parent 7063cd5 commit 6f666c7
Show file tree
Hide file tree
Showing 5 changed files with 32 additions and 2 deletions.
18 changes: 17 additions & 1 deletion app/javascript/sdk/IFrameHelper.js
Expand Up @@ -140,7 +140,10 @@ export const IFrameHelper = {
}
},
onLocationChange: ({ referrerURL, referrerHost }) => {
IFrameHelper.sendMessage('change-url', { referrerURL, referrerHost });
IFrameHelper.sendMessage('change-url', {
referrerURL,
referrerHost,
});
},

setUnreadMode: message => {
Expand Down Expand Up @@ -175,6 +178,19 @@ export const IFrameHelper = {
const holderEl = document.querySelector('.woot-widget-holder');
removeClass(holderEl, 'has-unread-view');
},

updateIframeHeight: message => {
setTimeout(() => {
const iframe = IFrameHelper.getAppFrame();
const updatedIframeHeight = message.isFixedHeight
? `${iframe.contentWindow.document.body.scrollHeight}px`
: '100%';
iframe.setAttribute(
'style',
`height: ${updatedIframeHeight} !important`
);
}, 100);
},
},
pushEvent: eventName => {
IFrameHelper.sendMessage('push-event', { eventName });
Expand Down
1 change: 1 addition & 0 deletions app/javascript/sdk/sdk.js
Expand Up @@ -132,6 +132,7 @@ export const SDK_CSS = `.woot-widget-holder {
right: 0;
width: auto;
bottom: 0;
top: auto;
}
.woot-widget-holder.has-unread-view.woot-elements--left {
left: 0;
Expand Down
8 changes: 8 additions & 0 deletions app/javascript/widget/App.vue
Expand Up @@ -97,6 +97,12 @@ export default {
label: this.$t('BUBBLE.LABEL'),
});
},
setIframeHeight(isFixedHeight) {
IFrameHelper.sendMessage({
event: 'updateIframeHeight',
isFixedHeight,
});
},
setLocale(locale) {
const { enabledLanguages } = window.chatwootWebChannel;
if (enabledLanguages.some(lang => lang.iso_639_1_code === locale)) {
Expand Down Expand Up @@ -155,11 +161,13 @@ export default {
event: 'setUnreadMode',
unreadMessageCount,
});
this.setIframeHeight(this.isMobile);
}
},
unsetUnreadView() {
if (this.isIFrame) {
IFrameHelper.sendMessage({ event: 'resetUnreadMode' });
this.setIframeHeight();
}
},
createWidgetEvents(message) {
Expand Down
5 changes: 5 additions & 0 deletions app/javascript/widget/assets/scss/woot.scss
Expand Up @@ -20,9 +20,14 @@ body {

.woot-widget-wrap {
height: 100%;
display: flex;
flex-direction: column;
justify-content: flex-end;
}

.is-mobile {
display: block;

.actions {
.close-button {
display: block !important;
Expand Down
2 changes: 1 addition & 1 deletion app/javascript/widget/views/Unread.vue
Expand Up @@ -122,7 +122,7 @@ export default {
.unread-wrap {
width: 100%;
height: 100%;
height: auto;
background: transparent;
display: flex;
flex-direction: column;
Expand Down

0 comments on commit 6f666c7

Please sign in to comment.