mirror of
https://github.com/discourse/discourse.git
synced 2024-12-03 19:15:48 +08:00
4c25266cf7
Since https://github.com/discourse/discourse/pull/25501 this behavior was broken. This PR attempts to fix it by being more fine grain. Also note that this PR is moving `footer-nav-ipad` and `footer-nav-visible` to the `html` element and not the `body`. It makes more sense as we are already adding most of other global state class like `keyboard-visible` to the `html` element. Tested on: - chrome desktop - safari ios - iphone - PWA ios - iphone - PWA ios - ipad - DiscourseHub iphone
25 lines
629 B
SCSS
25 lines
629 B
SCSS
@mixin chat-height($inset: 0px) {
|
|
// desktop and mobile
|
|
// -1px is for the bottom border of the chat navbar
|
|
$base-height: calc(
|
|
var(--chat-vh, 1vh) * 100 - var(--header-offset, 0px) - 1px - $inset
|
|
);
|
|
|
|
height: calc($base-height - var(--composer-height, 0px));
|
|
|
|
// mobile with keyboard opened
|
|
html.keyboard-visible & {
|
|
height: calc($base-height);
|
|
}
|
|
|
|
// ipad
|
|
html.footer-nav-ipad & {
|
|
height: calc($base-height - var(--composer-height, 0px));
|
|
}
|
|
|
|
// PWA/HUB without keyboard
|
|
html.footer-nav-visible:not(.keyboard-visible) & {
|
|
height: calc($base-height - var(--footer-nav-height, 0px));
|
|
}
|
|
}
|