Add settings item for sidebar toggle.

This commit is contained in:
Zhongyi Tong
2017-07-26 17:54:03 +08:00
parent a36b39ec73
commit 975bcbbe31
3 changed files with 41 additions and 4 deletions

View File

@@ -21,10 +21,10 @@ class GeneralSection extends BaseComponent {
<div class="setting-control"></div>
</div>
</div>
<div class="title">App updates</div>
<div class="title">App Updates</div>
<div id="betaupdate-option-settings" class="settings-card">
<div class="setting-row">
<div class="setting-description">Get Beta updates</div>
<div class="setting-description">Get beta updates</div>
<div class="setting-control"></div>
</div>
</div>
@@ -35,6 +35,13 @@ class GeneralSection extends BaseComponent {
<div class="setting-control"></div>
</div>
</div>
<div class="title">User Interface</div>
<div id="ui-option-settings" class="settings-card">
<div class="setting-row" id="sidebar-option">
<div class="setting-description">Show sidebar</div>
<div class="setting-control"></div>
</div>
</div>
</div>
`;
}
@@ -67,11 +74,16 @@ class GeneralSection extends BaseComponent {
this.settingsOptionTemplate(silentOption);
}
sidebarToggleTemplate(toggleOption) {
this.settingsOptionTemplate(toggleOption);
}
init() {
this.props.$root.innerHTML = this.template();
this.initTrayOption();
this.initUpdateOption();
this.initSilentOption();
this.initSidebarToggle();
}
initTrayOption() {
@@ -120,6 +132,23 @@ class GeneralSection extends BaseComponent {
});
}
initSidebarToggle() {
this.$sidebarOptionSettings = document.querySelector('#ui-option-settings #sidebar-option .setting-control');
this.$sidebarOptionSettings.innerHTML = '';
const sidebarOption = ConfigUtil.getConfigItem('show-sidebar', false);
const $sidebarOption = this.generateNodeFromTemplate(this.settingsOptionTemplate(sidebarOption));
this.$sidebarOptionSettings.appendChild($sidebarOption);
$sidebarOption.addEventListener('click', () => {
const newValue = !ConfigUtil.getConfigItem('show-sidebar');
ConfigUtil.setConfigItem('show-sidebar', newValue);
debugger;
ipcRenderer.send('forward-message', 'toggle-sidebar', newValue);
this.initSidebarToggle();
});
}
handleServerInfoChange() {
ipcRenderer.send('forward-message', 'reload-viewer');
}