aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoreugenijm <eugenijm@protonmail.com>2020-07-21 14:53:01 +0300
committereugenijm <eugenijm@protonmail.com>2020-07-23 09:53:51 +0300
commitdac075c61a33eafa6778d04b9f972dbc1e1dfb57 (patch)
tree7048fc60cdc7c3d3029bccd61c30d63d79b15435 /src
parent25a015b4715b7e85af310bae0ed360f98aef6205 (diff)
Fix mobile setting modal behavior: ensure the mobile browser address bar doesn't overlap the modal top panel.
Diffstat (limited to 'src')
-rw-r--r--src/App.scss16
-rw-r--r--src/components/settings_modal/settings_modal.js15
-rw-r--r--src/components/settings_modal/settings_modal.scss3
3 files changed, 33 insertions, 1 deletions
diff --git a/src/App.scss b/src/App.scss
index e2e2d079..21c00bac 100644
--- a/src/App.scss
+++ b/src/App.scss
@@ -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;
diff --git a/src/components/settings_modal/settings_modal.js b/src/components/settings_modal/settings_modal.js
index f0d49c91..b6880445 100644
--- a/src/components/settings_modal/settings_modal.js
+++ b/src/components/settings_modal/settings_modal.js
@@ -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')
+ }
+ }
+ }
}
}
diff --git a/src/components/settings_modal/settings_modal.scss b/src/components/settings_modal/settings_modal.scss
index 0da4d9a8..e7f4d3d3 100644
--- a/src/components/settings_modal/settings_modal.scss
+++ b/src/components/settings_modal/settings_modal.scss
@@ -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 {