webview: Fix webview flickering. (#439)

Rewrote styling for the webview so that it takes the whole window
when the app loads up.

Fixes #249.
This commit is contained in:
Akash Nimare
2018-03-09 14:35:13 +05:30
committed by GitHub
parent 603ad7dfcd
commit 435e5f086e
2 changed files with 18 additions and 10 deletions

View File

@@ -28,7 +28,7 @@ body {
-webkit-app-region: drag; -webkit-app-region: drag;
overflow: hidden; overflow: hidden;
transition: all 0.5s ease; transition: all 0.5s ease;
z-index: 1; z-index: 2;
} }
.toggle-sidebar div { .toggle-sidebar div {
@@ -249,28 +249,34 @@ body {
} }
webview { webview {
opacity: 1;
/* transition: opacity 0.3s ease-in; */ /* transition: opacity 0.3s ease-in; */
flex-grow: 1; flex-grow: 1;
position: absolute;
width: 100%;
height: 100%;
flex-grow: 1;
display: flex;
flex-direction: column;
} }
webview.onload { webview.onload {
transition: opacity 1s cubic-bezier(0.95, 0.05, 0.795, 0.035); transition: opacity 1s cubic-bezier(0.95, 0.05, 0.795, 0.035);
} }
webview.disabled { webview.active {
flex: 0 1; opacity: 1;
height: 0; z-index: 1;
width: 0; visibility: visible;
opacity: 0;
transition: opacity 0.3s ease-out;
} }
webview:focus { webview.disabled {
opacity: 0;
}
webview.focus {
outline: 0px solid transparent; outline: 0px solid transparent;
} }
/* Tooltip styling */ /* Tooltip styling */
#back-tooltip, #back-tooltip,

View File

@@ -130,6 +130,7 @@ class WebView extends BaseComponent {
} }
this.$el.classList.remove('disabled'); this.$el.classList.remove('disabled');
this.$el.classList.add('active');
setTimeout(() => { setTimeout(() => {
if (this.props.role === 'server') { if (this.props.role === 'server') {
this.$el.classList.remove('onload'); this.$el.classList.remove('onload');
@@ -168,6 +169,7 @@ class WebView extends BaseComponent {
hide() { hide() {
this.$el.classList.add('disabled'); this.$el.classList.add('disabled');
this.$el.classList.remove('active');
} }
load() { load() {