1
0
mirror of https://github.com/chinchang/web-maker.git synced 2025-07-17 20:11:12 +02:00

persist size info when it changes to fix size changing bug

This commit is contained in:
Kushagra Gour
2018-06-25 10:43:20 +05:30
parent d5a3fc1fcf
commit a126338fc5
2 changed files with 17 additions and 1 deletions

View File

@@ -379,6 +379,7 @@ export default class ContentWrap extends Component {
this.codeSplitInstance.setSizes(arr);
codeWrapEl.classList.add('is-maximized');
}
this.updateSplits();
}
collapseBtnHandler(e) {
@@ -402,6 +403,12 @@ export default class ContentWrap extends Component {
mainSplitSizes: this.getMainSplitSizesToApply()
});
}
updateSplits() {
this.props.onSplitUpdate();
// Not using setState to avoid re-render
this.state.codeSplitSizes = this.props.currentItem.sizes;
this.state.mainSplitSizes = this.props.currentItem.mainSizes;
}
// Returns the sizes of main code & preview panes.
getMainSplitSizesToApply() {
@@ -435,6 +442,7 @@ export default class ContentWrap extends Component {
this.setPreviewContent(true);
}, 1);
}
this.updateSplits();
}
codeSplitDragStart() {
document.body.classList.add('is-dragging');
@@ -442,6 +450,7 @@ export default class ContentWrap extends Component {
codeSplitDragEnd() {
this.updateCodeWrapCollapseStates();
document.body.classList.remove('is-dragging');
this.updateSplits();
}
/**
* Loaded the code comiler based on the mode selected
@@ -879,7 +888,7 @@ export default class ContentWrap extends Component {
<div
class="js-console__header code-wrap__header"
title="Double click to toggle console"
onDblClick={this.toggleConsole.bind(this)}
onDblClick={this.consoleHeaderDblClickHandler.bind(this)}
>
<span class="code-wrap__header-label">
Console (<span id="logCountEl">0</span>)

View File

@@ -967,6 +967,12 @@ export default class App extends Component {
this.closeAllOverlays();
}
splitUpdateHandler(mainSplitInstance, codeSplitInstance) {
// Not using setState to avoid re-render
this.state.currentItem.sizes = this.getCodePaneSizes();
this.state.currentItem.mainSizes = this.getMainPaneSizes();
}
render() {
return (
<div>
@@ -996,6 +1002,7 @@ export default class App extends Component {
onRef={comp => (this.contentWrap = comp)}
prefs={this.state.prefs}
onEditorFocus={this.editorFocusHandler.bind(this)}
onSplitUpdate={this.splitUpdateHandler.bind(this)}
/>
<div class="global-console-container" id="globalConsoleContainerEl" />
<Footer