From 4cc73cfe217ebc15136451ede050e5b8d5024328 Mon Sep 17 00:00:00 2001 From: shpuld Date: Mon, 13 Nov 2017 12:00:08 +0200 Subject: [PATCH] Get rid of the js to scale sidepanel, add an additional div and a css class to fix the same issue. --- src/App.js | 23 ----------------------- src/App.scss | 12 ++++++++---- src/App.vue | 14 ++++++++------ 3 files changed, 16 insertions(+), 33 deletions(-) diff --git a/src/App.js b/src/App.js index 3823bd03..1da3ff7c 100644 --- a/src/App.js +++ b/src/App.js @@ -23,18 +23,6 @@ export default { style () { return { 'background-image': `url(${this.background})` } }, sitename () { return this.$store.state.config.name } }, - created () { - // this is to detect user zooming mostly - window.addEventListener('resize', this.fixSidebarWidth) - }, - mounted () { - // for some reason, at least in dev mode, dom is not ready enough at this point - // in theory calling the function directly here should be enough, but it's not - setTimeout(() => { this.fixSidebarWidth() }, 500) - }, - destroyed () { - window.removeEventListener('resize', this.fixSidebarWidth) - }, methods: { activatePanel (panelName) { this.mobileActivePanel = panelName @@ -44,17 +32,6 @@ export default { }, logout () { this.$store.dispatch('logout') - }, - fixSidebarWidth () { - // firefox - let barwidth = window.innerWidth - document.body.offsetWidth - if (document.body.offsetWidth <= 0) { - // chromium - barwidth = window.innerWidth - document.body.scrollWidth - } - // adjust the sidebar size to fit the scrollbar width to keep the gap consistently sized - document.getElementById('sidebar-container').style.width = `${345 + barwidth}px` - document.getElementById('sidebar-container').style.paddingRight = `${barwidth}px` } } } diff --git a/src/App.scss b/src/App.scss index 6679b2c2..d0060a0e 100644 --- a/src/App.scss +++ b/src/App.scss @@ -190,7 +190,7 @@ nav { flex-shrink: 1; } -.sidebar { +.sidebar-bounds { flex: 0; flex-basis: 35%; } @@ -221,21 +221,25 @@ nav { body { overflow-y: scroll; } - .sidebar { + .sidebar-bounds { overflow: hidden; max-height: 100vh; width: 345px; position: fixed; margin-top: -10px; - .sidebar-container { + .sidebar-scroller { height: 96vh; width: 365px; padding-top: 10px; - padding-right: 20px; + padding-right: 50px; overflow-x: hidden; overflow-y: scroll; } + + .sidebar { + width: 345px; + } } .sidebar-flexer { max-height: 96vh; diff --git a/src/App.vue b/src/App.vue index 59cfcaa6..0d004665 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,6 +1,6 @@