From b154d6d5340fc12033b3db8533010a9aaf394048 Mon Sep 17 00:00:00 2001 From: JC Brand Date: Tue, 6 Mar 2018 23:49:39 +0100 Subject: [PATCH] Render chat head, content and message form as flex items. --- css/converse-muc-embedded.css | 8 +- css/converse.css | 36 ++-- css/inverse.css | 332 +++------------------------------- mockup/chatbox.html | 91 ++++++++++ sass/_chatbox.scss | 23 +-- sass/_chatrooms.scss | 5 +- sass/_muc_embedded.scss | 1 - sass/converse/_variables.scss | 3 +- sass/inverse/_chatbox.scss | 3 +- sass/inverse/_chatrooms.scss | 1 - sass/inverse/_variables.scss | 5 +- sass/inverse/inverse.scss | 1 - 12 files changed, 152 insertions(+), 357 deletions(-) diff --git a/css/converse-muc-embedded.css b/css/converse-muc-embedded.css index 7bd03ff07..7265048ba 100644 --- a/css/converse-muc-embedded.css +++ b/css/converse-muc-embedded.css @@ -43,11 +43,9 @@ height: calc(100% - 55px); } #conversejs.converse-embedded .chatroom .box-flyout .occupants-heading { font-size: 120%; } - #conversejs.converse-embedded .chatroom .box-flyout .chat-content { - height: calc(100% - 97px); } - #conversejs.converse-embedded .chatroom .box-flyout .chat-content .chat-message { - margin: 0.5em; - font-size: 120%; } + #conversejs.converse-embedded .chatroom .box-flyout .chat-content .chat-message { + margin: 0.5em; + font-size: 120%; } #conversejs.converse-embedded .chatroom .box-flyout .sendXMPPMessage .chat-textarea { padding: 0.5em; font-size: 110%; } diff --git a/css/converse.css b/css/converse.css index 24964de80..5996fe771 100644 --- a/css/converse.css +++ b/css/converse.css @@ -5228,6 +5228,9 @@ body.reset { background-color: #e7f7ee; } #converse-embedded-chat .chatbox .box-flyout, #conversejs .chatbox .box-flyout { + display: flex; + flex-direction: column; + justify-content: space-between; background-color: white; box-shadow: 1px 3px 5px 3px rgba(0, 0, 0, 0.4); height: 450px; @@ -5261,13 +5264,14 @@ body.reset { width: 100%; } #converse-embedded-chat .chatbox .chat-body, #conversejs .chatbox .chat-body { - background-color: white; + display: flex; + flex-direction: column; + justify-content: space-between; + height: 100%; + background-color: #3AA569; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; - border-top: 0; - height: 289px; - height: -webkit-calc(100% - 55px); - height: calc(100% - 55px); } + border-top: 0; } @media screen and (max-height: 450px) { #converse-embedded-chat .chatbox .chat-body, #conversejs .chatbox .chat-body { @@ -5363,23 +5367,20 @@ body.reset { white-space: nowrap; } #converse-embedded-chat .chatbox .chat-content, #conversejs .chatbox .chat-content { - position: relative; padding: 0.5em; font-size: 13px; color: #777; overflow-y: auto; border: 0; background-color: #ffffff; - line-height: 1.3em; - height: 206px; - height: calc(100% - 96px); } + line-height: 1.3em; } #converse-embedded-chat .chatbox .chat-content .toggle-spoiler:before, #conversejs .chatbox .chat-content .toggle-spoiler:before { padding-right: 0.25em; whitespace: nowrap; } #converse-embedded-chat .chatbox .chat-content-sendbutton, #conversejs .chatbox .chat-content-sendbutton { - height: calc(100% - 128px); } + height: calc(100% - 93px); } #converse-embedded-chat .chatbox .dropdown, #conversejs .chatbox .dropdown { /* status dropdown styles */ @@ -5397,12 +5398,9 @@ body.reset { border-bottom-left-radius: 4px; background-clip: padding-box; background-color: white; - border-top: 1px solid #BBB; border: 0; margin: 0; - padding: 0; - position: relative; - height: 95px; } + padding: 0; } @media screen and (max-height: 450px) { #converse-embedded-chat .chatbox .sendXMPPMessage, #conversejs .chatbox .sendXMPPMessage { @@ -5420,11 +5418,10 @@ body.reset { border-top-right-radius: 0; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; - height: 70px; padding: 0.5em; width: 100%; border: none; - resize: none; } + min-height: 60px; } #converse-embedded-chat .chatbox .sendXMPPMessage .chat-textarea.spoiler, #conversejs .chatbox .sendXMPPMessage .chat-textarea.spoiler { height: 42px; } @@ -5444,7 +5441,6 @@ body.reset { box-sizing: border-box; margin: 0; padding: 0.25em; - height: 25px; display: block; border-top: 8px solid #3AA569; background-color: white; @@ -6184,6 +6180,7 @@ body.reset { height: 100vh; } } #converse-embedded-chat .chatroom .box-flyout .chatroom-body, #conversejs .chatroom .box-flyout .chatroom-body { + flex-direction: row; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: white; @@ -6218,6 +6215,8 @@ body.reset { padding: 2em 2em 0 2em; } #converse-embedded-chat .chatroom .box-flyout .chatroom-body .chat-area, #conversejs .chatroom .box-flyout .chatroom-body .chat-area { + display: flex; + flex-direction: column; word-wrap: break-word; min-width: 200px; } #converse-embedded-chat .chatroom .box-flyout .chatroom-body .chat-area .new-msgs-indicator, @@ -6226,6 +6225,7 @@ body.reset { max-width: 70%; } #converse-embedded-chat .chatroom .box-flyout .chatroom-body .chat-area .chat-content, #conversejs .chatroom .box-flyout .chatroom-body .chat-area .chat-content { + height: 100%; padding: 0.5em; } #converse-embedded-chat .chatroom .box-flyout .chatroom-body .chat-area.full, #conversejs .chatroom .box-flyout .chatroom-body .chat-area.full { @@ -6339,8 +6339,6 @@ body.reset { font-size: 14px; height: 289px; width: 100%; - height: -webkit-calc(100% - 55px); - height: calc(100% - 55px); overflow-y: auto; position: absolute; } #converse-embedded-chat .chatroom .box-flyout .chatroom-body .chatroom-form-container .validation-message, diff --git a/css/inverse.css b/css/inverse.css index 155e56eb9..f16ae0fbe 100644 --- a/css/inverse.css +++ b/css/inverse.css @@ -10,292 +10,6 @@ https://coolors.co/app/264653-2a9d8f-e9c46a-f4a261-e76f51 http://paletton.com/#uid=70a0u0kkNs+b4JOgryLpxqpsbkI */ -@font-face { - font-family: 'Converse-js'; - src: url("../fonticons/fonts/icomoon.eot?wvi0ht"); - src: url("../fonticons/fonts/icomoon.eot?wvi0ht#iefix") format("embedded-opentype"), url("../fonticons/fonts/icomoon.ttf?wvi0ht") format("truetype"), url("../fonticons/fonts/icomoon.woff?wvi0ht") format("woff"), url("../fonticons/fonts/icomoon.svg?wvi0ht#icomoon") format("svg"); - font-weight: normal; - font-style: normal; } -.icon-conversejs { - padding-right: 0.2em; - font-family: 'Converse-js'; - speak: none; - font-style: normal; - font-weight: normal; - font-variant: normal; - text-transform: none; - line-height: 1; - /* Better Font Rendering =========== */ - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; } - -.icon-conversejs:before { - content: "\e600"; } - -#converse-embedded-chat .icon-address-book:before, -#conversejs .icon-address-book:before { - content: "\270f"; } -#converse-embedded-chat .icon-attachment:before, -#conversejs .icon-attachment:before { - content: "\e032"; } -#converse-embedded-chat .icon-away:before, -#conversejs .icon-away:before { - content: "\25fb"; } -#converse-embedded-chat .icon-blocked:before, -#conversejs .icon-blocked:before { - content: "\2718"; } -#converse-embedded-chat .icon-bold:before, -#conversejs .icon-bold:before { - content: "\e04d"; } -#converse-embedded-chat .icon-bubbles2:before, -#conversejs .icon-bubbles2:before { - content: "\e016"; } -#converse-embedded-chat .icon-bubbles3:before, -#conversejs .icon-bubbles3:before { - content: "\e017"; } -#converse-embedded-chat .icon-bubbles:before, -#conversejs .icon-bubbles:before { - content: "\e015"; } -#converse-embedded-chat .icon-busy:before, -#conversejs .icon-busy:before { - content: "\e004"; } -#converse-embedded-chat .icon-dnd:before, -#conversejs .icon-dnd:before { - content: "\e004"; } -#converse-embedded-chat .icon-cancel-circle:before, -#conversejs .icon-cancel-circle:before { - content: "\e058"; } -#converse-embedded-chat .icon-checkmark:before, -#conversejs .icon-checkmark:before { - content: "\2713"; } -#converse-embedded-chat .icon-close:before, -#conversejs .icon-close:before { - content: "\2715"; } -#converse-embedded-chat .icon-closed:before, -#conversejs .icon-closed:before { - content: "\25ba"; } -#converse-embedded-chat .icon-cog:before, -#conversejs .icon-cog:before { - content: "\e02f"; } -#converse-embedded-chat .icon-cogs:before, -#conversejs .icon-cogs:before { - content: "\e022"; } -#converse-embedded-chat .icon-conversejs:before, -#conversejs .icon-conversejs:before { - content: "\e600"; } -#converse-embedded-chat .icon-database:before, -#conversejs .icon-database:before { - content: "\f1c0"; } -#converse-embedded-chat .icon-envelope:before, -#conversejs .icon-envelope:before { - content: "\f003"; } -#converse-embedded-chat .icon-exit:before, -#conversejs .icon-exit:before { - content: "\e601"; } -#converse-embedded-chat .icon-eye-blocked:before, -#conversejs .icon-eye-blocked:before { - content: "\e031"; } -#converse-embedded-chat .icon-eye:before, -#conversejs .icon-eye:before { - content: "\e030"; } -#converse-embedded-chat .icon-github:before, -#conversejs .icon-github:before { - content: "\eab0"; } -#converse-embedded-chat .icon-globe:before, -#conversejs .icon-globe:before { - content: "\f0ac"; } -#converse-embedded-chat .icon-google2:before, -#conversejs .icon-google2:before { - content: "\ea89"; } -#converse-embedded-chat .icon-group:before, -#conversejs .icon-group:before { - content: "\f0c0"; } -#converse-embedded-chat .icon-happy:before, -#conversejs .icon-happy:before { - content: "\263b"; } -#converse-embedded-chat .icon-heart2:before, -#conversejs .icon-heart2:before { - content: "\f004"; } -#converse-embedded-chat .icon-heart:before, -#conversejs .icon-heart:before { - content: "\2764"; } -#converse-embedded-chat .icon-heart_empty:before, -#conversejs .icon-heart_empty:before { - content: "\f08a"; } -#converse-embedded-chat .icon-hide-users:before, -#conversejs .icon-hide-users:before { - content: "\e01c"; } -#converse-embedded-chat .icon-home:before, -#conversejs .icon-home:before { - content: "\e000"; } -#converse-embedded-chat .icon-idcard-dark:before, -#conversejs .icon-idcard-dark:before { - content: "\f2c2"; } -#converse-embedded-chat .icon-idcard:before, -#conversejs .icon-idcard:before { - content: "\f2c3"; } -#converse-embedded-chat .icon-image:before, -#conversejs .icon-image:before { - content: "\2b14"; } -#converse-embedded-chat .icon-info:before, -#conversejs .icon-info:before { - content: "\2360"; } -#converse-embedded-chat .icon-italic:before, -#conversejs .icon-italic:before { - content: "\e04f"; } -#converse-embedded-chat .icon-key:before, -#conversejs .icon-key:before { - content: "\e028"; } -#converse-embedded-chat .icon-legal:before, -#conversejs .icon-legal:before { - content: "\f0e3"; } -#converse-embedded-chat .icon-lock:before, -#conversejs .icon-lock:before { - content: "\e027"; } -#converse-embedded-chat .icon-minus:before, -#conversejs .icon-minus:before { - content: "\e05a"; } -#converse-embedded-chat .icon-music:before, -#conversejs .icon-music:before { - content: "\266b"; } -#converse-embedded-chat .icon-newtab:before, -#conversejs .icon-newtab:before { - content: "\e053"; } -#converse-embedded-chat .icon-notebook:before, -#conversejs .icon-notebook:before { - content: "\2710"; } -#converse-embedded-chat .icon-notification:before, -#conversejs .icon-notification:before { - content: "\e01f"; } -#converse-embedded-chat .icon-offline:before, -#conversejs .icon-offline:before { - content: "\e002"; } -#converse-embedded-chat .icon-logout:before, -#conversejs .icon-logout:before { - content: "\e002"; } -#converse-embedded-chat .icon-online:before, -#conversejs .icon-online:before { - content: "\25fc"; } -#converse-embedded-chat .icon-opened:before, -#conversejs .icon-opened:before { - content: "\25bc"; } -#converse-embedded-chat .icon-pencil:before, -#conversejs .icon-pencil:before { - content: "\270e"; } -#converse-embedded-chat .icon-phone-hang-up:before, -#conversejs .icon-phone-hang-up:before { - content: "\260e"; } -#converse-embedded-chat .icon-phone:before, -#conversejs .icon-phone:before { - content: "\260f"; } -#converse-embedded-chat .icon-plus:before, -#conversejs .icon-plus:before { - content: "\271a"; } -#converse-embedded-chat .icon-pushpin:before, -#conversejs .icon-pushpin:before { - content: "\e012"; } -#converse-embedded-chat .icon-quotes-left:before, -#conversejs .icon-quotes-left:before { - content: "\e01d"; } -#converse-embedded-chat .icon-reddit:before, -#conversejs .icon-reddit:before { - content: "\eac6"; } -#converse-embedded-chat .icon-remove:before, -#conversejs .icon-remove:before { - content: "\e02d"; } -#converse-embedded-chat .icon-room-info:before, -#conversejs .icon-room-info:before { - content: "\e059"; } -#converse-embedded-chat .icon-save:before, -#conversejs .icon-save:before { - content: "\f0c7"; } -#converse-embedded-chat .icon-search:before, -#conversejs .icon-search:before { - content: "\e021"; } -#converse-embedded-chat .icon-show-users:before, -#conversejs .icon-show-users:before { - content: "\e01e"; } -#converse-embedded-chat .icon-smiley:before, -#conversejs .icon-smiley:before { - content: "\263a"; } -#converse-embedded-chat .icon-snowflake:before, -#conversejs .icon-snowflake:before { - content: "\f2dc"; } -#converse-embedded-chat .icon-spell-check:before, -#conversejs .icon-spell-check:before { - content: "\e045"; } -#converse-embedded-chat .icon-spinner:before, -#conversejs .icon-spinner:before { - content: "\231b"; } -#converse-embedded-chat .icon-star:before, -#conversejs .icon-star:before { - content: "\f005"; } -#converse-embedded-chat .icon-star_empty:before, -#conversejs .icon-star_empty:before { - content: "\f006"; } -#converse-embedded-chat .icon-strikethrough:before, -#conversejs .icon-strikethrough:before { - content: "\e050"; } -#converse-embedded-chat .icon-twitter:before, -#conversejs .icon-twitter:before { - content: "\ea96"; } -#converse-embedded-chat .icon-underline:before, -#conversejs .icon-underline:before { - content: "\e04e"; } -#converse-embedded-chat .icon-unlocked:before, -#conversejs .icon-unlocked:before { - content: "\e025"; } -#converse-embedded-chat .icon-user:before, -#conversejs .icon-user:before { - content: "\e01a"; } -#converse-embedded-chat .icon-users:before, -#conversejs .icon-users:before { - content: "\e01b"; } -#converse-embedded-chat .icon-warning:before, -#conversejs .icon-warning:before { - content: "\26a0"; } -#converse-embedded-chat .icon-wrench:before, -#conversejs .icon-wrench:before { - content: "\e024"; } -#converse-embedded-chat .icon-xa:before, -#conversejs .icon-xa:before { - content: "\e602"; } -#converse-embedded-chat .icon-zoomin:before, -#conversejs .icon-zoomin:before { - content: "\e02b"; } -#converse-embedded-chat .icon-zoomout:before, -#conversejs .icon-zoomout:before { - content: "\e02a"; } -#converse-embedded-chat [data-icon]:before, -#conversejs [data-icon]:before { - content: attr(data-icon); - font-family: 'Converse-js'; - font-variant: normal; - font-weight: normal; - line-height: 1; - speak: none; - text-transform: none; - /* Better Font Rendering =========== */ - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; } -#converse-embedded-chat [class^="icon-"]:before, #converse-embedded-chat [class*=" icon-"]:before, -#conversejs [class^="icon-"]:before, -#conversejs [class*=" icon-"]:before { - background-position: 14px 14px; - background-image: none; - font-family: 'Converse-js'; - font-style: normal; - font-variant: normal; - font-weight: normal; - width: auto; - height: auto; - line-height: 1; - speak: none; - text-transform: none; - /* Better Font Rendering =========== */ - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; } - #conversejs :root { --blue: #387592; --indigo: #6610f2; @@ -5278,6 +4992,9 @@ body { background-color: #e7f7ee; } #converse-embedded-chat .chatbox .box-flyout, #conversejs .chatbox .box-flyout { + display: flex; + flex-direction: column; + justify-content: space-between; background-color: white; box-shadow: 1px 3px 5px 3px rgba(0, 0, 0, 0.4); height: 100%; @@ -5311,13 +5028,14 @@ body { width: 100%; } #converse-embedded-chat .chatbox .chat-body, #conversejs .chatbox .chat-body { - background-color: white; + display: flex; + flex-direction: column; + justify-content: space-between; + height: 100%; + background-color: #3AA569; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; - border-top: 0; - height: 289px; - height: -webkit-calc(100% - 62px); - height: calc(100% - 62px); } + border-top: 0; } @media screen and (max-height: 450px) { #converse-embedded-chat .chatbox .chat-body, #conversejs .chatbox .chat-body { @@ -5413,23 +5131,20 @@ body { white-space: nowrap; } #converse-embedded-chat .chatbox .chat-content, #conversejs .chatbox .chat-content { - position: relative; padding: 0.5em; font-size: 13px; color: #777; overflow-y: auto; border: 0; background-color: #ffffff; - line-height: 1.3em; - height: 206px; - height: calc(100% - 100px); } + line-height: 1.3em; } #converse-embedded-chat .chatbox .chat-content .toggle-spoiler:before, #conversejs .chatbox .chat-content .toggle-spoiler:before { padding-right: 0.25em; whitespace: nowrap; } #converse-embedded-chat .chatbox .chat-content-sendbutton, #conversejs .chatbox .chat-content-sendbutton { - height: calc(100% - 132px); } + height: calc(100% - 93px); } #converse-embedded-chat .chatbox .dropdown, #conversejs .chatbox .dropdown { /* status dropdown styles */ @@ -5447,12 +5162,9 @@ body { border-bottom-left-radius: 4px; background-clip: padding-box; background-color: white; - border-top: 1px solid #BBB; border: 0; margin: 0; - padding: 0; - position: relative; - height: 99px; } + padding: 0; } @media screen and (max-height: 450px) { #converse-embedded-chat .chatbox .sendXMPPMessage, #conversejs .chatbox .sendXMPPMessage { @@ -5470,11 +5182,10 @@ body { border-top-right-radius: 0; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; - height: 70px; padding: 0.5em; width: 100%; border: none; - resize: none; } + min-height: 60px; } #converse-embedded-chat .chatbox .sendXMPPMessage .chat-textarea.spoiler, #conversejs .chatbox .sendXMPPMessage .chat-textarea.spoiler { height: 42px; } @@ -5494,7 +5205,6 @@ body { box-sizing: border-box; margin: 0; padding: 0.25em; - height: 29px; display: block; border-top: 8px solid #3AA569; background-color: white; @@ -5665,7 +5375,7 @@ body { font-size: 20px; padding: 0; } #conversejs.fullscreen .chat-head .user-custom-message { - font-size: 66%; + font-size: 50%; height: auto; line-height: 22px; } #conversejs.fullscreen .chat-head.chat-head-chatbox .close-chatbox-button { @@ -5695,12 +5405,13 @@ body { height: 22px; margin-bottom: -5.5px; } #conversejs.fullscreen .chatbox .chat-content { + height: 100%; padding: 0 1em 1em 1em; border-top-left-radius: 4px; border-top-right-radius: 4px; } #conversejs.fullscreen .chatbox .chat-title { font-size: 26px; - line-height: 30px; } + line-height: 26px; } #conversejs.fullscreen .chatbox .sendXMPPMessage ul { width: 100%; } #conversejs.fullscreen .chatbox .sendXMPPMessage .toggle-smiley { @@ -6042,7 +5753,7 @@ body { margin: 0; padding: 3em 2em 3em; } #conversejs.fullscreen #controlbox .toggle-register-login { - line-height: 30px; } + line-height: 26px; } #conversejs.fullscreen #controlbox .brand-heading-container { text-align: center; } #conversejs.fullscreen #controlbox .brand-heading-container .brand-heading { @@ -6301,6 +6012,7 @@ body { height: 100vh; } } #converse-embedded-chat .chatroom .box-flyout .chatroom-body, #conversejs .chatroom .box-flyout .chatroom-body { + flex-direction: row; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; background-color: white; @@ -6335,6 +6047,8 @@ body { padding: 2em 2em 0 2em; } #converse-embedded-chat .chatroom .box-flyout .chatroom-body .chat-area, #conversejs .chatroom .box-flyout .chatroom-body .chat-area { + display: flex; + flex-direction: column; word-wrap: break-word; min-width: 100%; } #converse-embedded-chat .chatroom .box-flyout .chatroom-body .chat-area .new-msgs-indicator, @@ -6343,6 +6057,7 @@ body { max-width: 70%; } #converse-embedded-chat .chatroom .box-flyout .chatroom-body .chat-area .chat-content, #conversejs .chatroom .box-flyout .chatroom-body .chat-area .chat-content { + height: 100%; padding: 0.5em; } #converse-embedded-chat .chatroom .box-flyout .chatroom-body .chat-area.full, #conversejs .chatroom .box-flyout .chatroom-body .chat-area.full { @@ -6456,8 +6171,6 @@ body { font-size: 16px; height: 289px; width: 100%; - height: -webkit-calc(100% - 62px); - height: calc(100% - 62px); overflow-y: auto; position: absolute; } #converse-embedded-chat .chatroom .box-flyout .chatroom-body .chatroom-form-container .validation-message, @@ -6515,8 +6228,7 @@ body { border-radius: 4px; } #conversejs.fullscreen .chatroom .box-flyout .chatroom-body .chat-area { border-top-left-radius: 4px; - min-width: auto; - height: calc(100vh - 95px); } + min-width: auto; } #conversejs.fullscreen .chatroom .box-flyout .chatroom-body .chat-area .chat-content { border-top-left-radius: 4px; padding: 0 1em 1em 1em; } diff --git a/mockup/chatbox.html b/mockup/chatbox.html index 2ebbfcfdb..ff5f2c0a0 100644 --- a/mockup/chatbox.html +++ b/mockup/chatbox.html @@ -90,6 +90,97 @@ Another message to check that scrolling works. +
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
+
+ 19:43  + + me:  + + Another message to check that scrolling works. +
diff --git a/sass/_chatbox.scss b/sass/_chatbox.scss index 2a804c47d..041578f1e 100644 --- a/sass/_chatbox.scss +++ b/sass/_chatbox.scss @@ -112,6 +112,9 @@ } .box-flyout { + display: flex; + flex-direction: column; + justify-content: space-between; background-color: white; box-shadow: 1px 3px 5px 3px rgba(0, 0, 0, 0.4); height: $chat-height; @@ -144,7 +147,11 @@ } } .chat-body { - background-color: white; + display: flex; + flex-direction: column; + justify-content: space-between; + height: 100%; + background-color: $chat-head-color; border-bottom-left-radius: $chatbox-border-radius; border-bottom-right-radius: $chatbox-border-radius; @media screen and (max-height: $mobile-landscape-height) { @@ -156,8 +163,6 @@ border-bottom-right-radius: 0; } border-top: 0; - height: 289px; - @include calc(height, '100% - #{$chat-head-height}'); p { color: $text-color; font-size: $font-size; @@ -250,7 +255,6 @@ white-space: nowrap; } .chat-content { - position: relative; padding: 0.5em; font-size: 13px; color: $text-color; @@ -258,8 +262,6 @@ border: 0; background-color: #ffffff; line-height: 1.3em; - height: 206px; - height: calc(100% - #{$toolbar-height + $chat-textarea-height +1px}); .toggle-spoiler:before { padding-right: 0.25em; @@ -267,7 +269,7 @@ } } .chat-content-sendbutton { - height: calc(100% - #{$toolbar-height + $chat-textarea-height + $send-button-height + 2*$send-button-margin}); + height: calc(100% - #{$chat-textarea-height + $send-button-height + 2*$send-button-margin}); } .dropdown { /* status dropdown styles */ @@ -285,12 +287,9 @@ @include border-bottom-radius($chatbox-border-radius); background-clip: padding-box; background-color: white; - border-top: 1px solid #BBB; border: 0; margin: 0; padding: 0; - position: relative; - height: #{$chat-textarea-height + $toolbar-height}; @media screen and (max-height: $mobile-landscape-height) { width: 100%; } @@ -306,11 +305,10 @@ border-top-left-radius: 0; border-top-right-radius: 0; @include border-bottom-radius($chatbox-border-radius); - height: $chat-textarea-height; padding: 0.5em; width: 100%; border: none; - resize: none; + min-height: $chat-textarea-height; &.spoiler { height: 42px; } @@ -331,7 +329,6 @@ box-sizing: border-box; margin: 0; padding: 0.25em; - height: $toolbar-height; display: block; border-top: 8px solid $chat-head-color; background-color: white; diff --git a/sass/_chatrooms.scss b/sass/_chatrooms.scss index 073dc1c73..c25e016b7 100644 --- a/sass/_chatrooms.scss +++ b/sass/_chatrooms.scss @@ -82,6 +82,7 @@ height: 100vh; } .chatroom-body { + flex-direction: row; @include border-bottom-radius($chatbox-border-radius); background-color: white; border-top: 0; @@ -120,6 +121,8 @@ padding: 2em 2em 0 2em; } .chat-area { + display: flex; + flex-direction: column; word-wrap: break-word; min-width: $chat-width; .new-msgs-indicator { @@ -127,6 +130,7 @@ max-width: 70%; } .chat-content { + height: 100%; padding: 0.5em; } &.full { @@ -246,7 +250,6 @@ font-size: $font-size; height: 289px; width: 100%; - @include calc(height, '100% - #{$chat-head-height}'); overflow-y: auto; position: absolute; diff --git a/sass/_muc_embedded.scss b/sass/_muc_embedded.scss index 4920fc133..c12a56b6f 100644 --- a/sass/_muc_embedded.scss +++ b/sass/_muc_embedded.scss @@ -54,7 +54,6 @@ font-size: 120%; } .chat-content { - height: calc(100% - #{$toolbar-height + $chat-textarea-height +2px}); .chat-message { margin: 0.5em; font-size: 120%; diff --git a/sass/converse/_variables.scss b/sass/converse/_variables.scss index 73bbba921..e7e220ae5 100644 --- a/sass/converse/_variables.scss +++ b/sass/converse/_variables.scss @@ -48,7 +48,7 @@ $light-text-color: #A8ABA1 !default; $border-color: #CCC !default; $icon-color: $blue !default; $save-button-color: $green !default; -$chat-textarea-height: 70px !default; +$chat-textarea-height: 60px !default; $send-button-height: 27px !default; $send-button-margin: 3px !default; @@ -101,7 +101,6 @@ $font-size-large: 16px !default; $font-size-huge: 20px !default; $legend-font-size: 16px !default; -$toolbar-height: 25px !default; $toolbar-color: $greenish-white !default; $emoji-picker-height: 100px !default; diff --git a/sass/inverse/_chatbox.scss b/sass/inverse/_chatbox.scss index f60bcafd1..8a5016b01 100644 --- a/sass/inverse/_chatbox.scss +++ b/sass/inverse/_chatbox.scss @@ -13,7 +13,7 @@ font-size: 20px; padding: 0; .user-custom-message { - font-size: 66%; + font-size: 50%; height: auto; line-height: $line-height; } @@ -55,6 +55,7 @@ } } .chat-content { + height: 100%; padding: 0 $padding $padding $padding; border-top-left-radius: $chatbox-border-radius; border-top-right-radius: $chatbox-border-radius; diff --git a/sass/inverse/_chatrooms.scss b/sass/inverse/_chatrooms.scss index 570635052..4b77fd442 100644 --- a/sass/inverse/_chatrooms.scss +++ b/sass/inverse/_chatrooms.scss @@ -26,7 +26,6 @@ .chat-area { border-top-left-radius: $chatbox-border-radius; min-width: auto; - height: calc(100vh - 95px); .chat-content { border-top-left-radius: $chatbox-border-radius; diff --git a/sass/inverse/_variables.scss b/sass/inverse/_variables.scss index 0c5a16b6b..ace13963d 100644 --- a/sass/inverse/_variables.scss +++ b/sass/inverse/_variables.scss @@ -65,7 +65,7 @@ $chat-head-text-color: white !default; $chat-head-inverse-text-color: white !default; $chat-head-height: 62px !default; -$chat-textarea-height: 70px !default; +$chat-textarea-height: 60px !default; $input-focus-color: #1A9707 !default; $highlight-color: #DCF9F6 !default; @@ -104,13 +104,12 @@ $font-size-large: 18px !default; $font-size-huge: 26px !default; $legend-font-size: 18px !default; -$toolbar-height: 29px !default; $toolbar-color: $greenish-white !default; $line-height-small: 20px !default; $line-height: 22px !default; $line-height-large: 24px !default; -$line-height-huge: 30px !default; +$line-height-huge: 26px !default; $controlbox-width: 250px !default; $chat-width: 100% !default; diff --git a/sass/inverse/inverse.scss b/sass/inverse/inverse.scss index b91880a87..b3d027297 100644 --- a/sass/inverse/inverse.scss +++ b/sass/inverse/inverse.scss @@ -13,7 +13,6 @@ @import "bootstrap/scss/variables"; @import "bootstrap/scss/mixins"; -@import "../fonts"; #conversejs { @import "bootstrap/scss/root"; @import "bootstrap/scss/reboot";