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

@@ -237,8 +237,7 @@ app.on('ready', () => {
});
ipc.on('forward-message', (event, listener, ...params) => {
console.log(listener, ...params);
page.send(listener);
page.send(listener, ...params);
});
ipc.on('register-server-tab-shortcut', (event, index) => {

View File

@@ -21,6 +21,7 @@ class ServerManagerView {
this.$reloadTooltip = $actionsContainer.querySelector('#reload-tooltip');
this.$settingsTooltip = $actionsContainer.querySelector('#setting-tooltip');
this.$sidebar = document.getElementById('sidebar');
this.activeTabIndex = -1;
this.tabs = [];
@@ -247,6 +248,14 @@ class ServerManagerView {
ipcRenderer.on('switch-server-tab', (event, index) => {
this.activateTab(index);
});
ipcRenderer.on('toggle-sidebar', (event, show) => {
debugger;
if (show) {
this.$sidebar.classList.remove('hidden');
} else {
this.$sidebar.classList.add('hidden');
}
});
ipcRenderer.on('render-taskbar-icon', (event, messageCount) => {
// Create a canvas from unread messagecounts
function createOverlayIcon(messageCount) {

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');
}