Fix mobile setting modal behavior: ensure the mobile browser address bar doesn't overlap the modal top panel.

This commit is contained in:
eugenijm 2020-07-21 14:53:01 +03:00
parent 25a015b471
commit dac075c61a
3 changed files with 33 additions and 1 deletions

View file

@ -943,6 +943,22 @@ nav {
line-height: 1.3rem;
}
.settings-modal-layout {
@media all and (max-width: 800px) {
height: 100%;
body {
height: 100vh;
overflow-y: hidden;
position: fixed;
}
#app {
height: 100%;
}
}
}
.chat-layout {
// Needed for smoother chat navigation in the desktop Safari (otherwise the chat layout "jumps" as the chat opens).
overflow: hidden;

View file

@ -36,6 +36,21 @@ const SettingsModal = {
modalPeeked () {
return this.$store.state.interface.settingsModalState === 'minimized'
}
},
watch: {
modalActivated (newValue) {
if (newValue) {
let html = document.querySelector('html')
if (html) {
html.classList.add('settings-modal-layout')
}
} else {
let html = document.querySelector('html')
if (html) {
html.classList.remove('settings-modal-layout')
}
}
}
}
}

View file

@ -1,6 +1,7 @@
@import 'src/_variables.scss';
.settings-modal {
overflow: hidden;
height: 100%;
&.peek {
.settings-modal-panel {
@ -27,7 +28,7 @@
@media all and (max-width: 800px) {
max-width: 100vw;
height: 100vh;
height: 100%;
}
>.panel-body {