From f38e9da828fe4393f16980b822ecf98595e7c00e Mon Sep 17 00:00:00 2001 From: Juan Tejada Date: Wed, 20 Jan 2016 19:22:33 -0800 Subject: [PATCH] Update default collapsed value for sidebar items in unified inbox view --- .../account-sidebar/lib/sidebar-item.coffee | 10 +++++----- .../account-sidebar/lib/sidebar-section.coffee | 18 ++++++++++++------ 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/internal_packages/account-sidebar/lib/sidebar-item.coffee b/internal_packages/account-sidebar/lib/sidebar-item.coffee index b8334299e..3a191e94b 100644 --- a/internal_packages/account-sidebar/lib/sidebar-item.coffee +++ b/internal_packages/account-sidebar/lib/sidebar-item.coffee @@ -57,7 +57,7 @@ class SidebarItem children: children perspective: perspective selected: isItemSelected(perspective) - collapsed: isItemCollapsed(id) + collapsed: isItemCollapsed(id) ? true deleted: isItemDeleted(perspective) counterStyle: counterStyle dataTransferType: dataTransferType @@ -89,7 +89,7 @@ class SidebarItem id += "-#{opts.name}" if opts.name @forPerspective(id, perspective, opts) - @forSheet: (id, name, iconName, sheet, count, children = []) -> + @forSheet: (id, name, iconName, sheet, count, collapsed, children = []) -> return { id, name, @@ -97,13 +97,13 @@ class SidebarItem count, sheet, children, - collapsed: isItemCollapsed(id) + collapsed: isItemCollapsed(id) ? true onToggleCollapsed: toggleItemCollapsed onSelect: (item) -> Actions.selectRootSheet(item.sheet) } - @forDrafts: ({accountId, name, children} = {}) -> + @forDrafts: ({accountId, name, children, collapsed} = {}) -> id = 'Drafts' id += "-#{name}" if name sheet = WorkspaceStore.Sheet.Drafts @@ -112,7 +112,7 @@ class SidebarItem DraftCountStore.count(accountId) else DraftCountStore.totalCount() - @forSheet(id, name ? id, iconName, sheet, count, children) + @forSheet(id, name ? id, iconName, sheet, count, collapsed, children) module.exports = SidebarItem diff --git a/internal_packages/account-sidebar/lib/sidebar-section.coffee b/internal_packages/account-sidebar/lib/sidebar-section.coffee index 0b96861dc..1f05b0bb9 100644 --- a/internal_packages/account-sidebar/lib/sidebar-section.coffee +++ b/internal_packages/account-sidebar/lib/sidebar-section.coffee @@ -8,6 +8,16 @@ _ = require 'underscore' SidebarItem = require './sidebar-item' +isSectionCollapsed = (id) -> + key = "core.accountSidebarCollapsed.#{id}Section" + collapsed = NylasEnv.config.get(key) + +toggleSectionCollapsed = (section) -> + key = "core.accountSidebarCollapsed.#{section.title}Section" + return unless section + NylasEnv.config.set(key, not section.collapsed) + + class SidebarSection @empty: (title)-> @@ -113,13 +123,9 @@ class SidebarSection title ?= account.categoryLabel() + collapsed = isSectionCollapsed(title) if collapsible - collapseKey = "core.accountSidebarCollapsed.#{title}Section" - collapsed = NylasEnv.config.get(collapseKey) - onToggleCollapsed = (section) => - return unless section - NylasEnv.config.set(collapseKey, not section.collapsed) - + onToggleCollapsed = toggleSectionCollapsed return { title: title