diff --git a/CHANGELOG.md b/CHANGELOG.md index 089c0c4cf..d5b3bf0a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,7 +16,7 @@ + On Windows, the icon is no longer pixelated at many resolutions + On Windows, long paths no longer cause installation to fail + On Windows, N1 uses the "NylasPro" font correctly - + Mark as read now works when viewing messages in split-pane mode + + Mark as read now works when viewing messages in two panel mode + Basic cut, copy, and paste menus are available for all inputs + You can now type in the middle of a search query + Names containing "via" are no longer truncated @@ -34,7 +34,7 @@ + Hover states in menus and dropdowns are more consistent - Performance: - + In split-pane mode, moving through messages quickly no longer causes jank. + + In two panel mode, moving through messages quickly no longer causes jank. + Model.fromJSON is 40% faster thanks to optimized loops and other fixes + Models are lazily deserialized after being broadcast into other windows diff --git a/docs/InterfaceConcepts.md b/docs/InterfaceConcepts.md index a08062201..1f4cedb65 100644 --- a/docs/InterfaceConcepts.md +++ b/docs/InterfaceConcepts.md @@ -4,7 +4,7 @@ Section: Guides Order: 1 --- -The N1 user interface is conceptually organized into Sheets. Each Sheet represents a window of content. For example, the `Threads` sheet lies at the heart of the application. When the user chooses the "Files" tab, a separate `Files` sheet is displayed in place of `Threads`. When the user clicks a thread in single-pane mode, a `Thread` sheet is pushed on to the workspace and appears after a brief transition. +The N1 user interface is conceptually organized into Sheets. Each Sheet represents a window of content. For example, the `Threads` sheet lies at the heart of the application. When the user chooses the "Files" tab, a separate `Files` sheet is displayed in place of `Threads`. When the user clicks a thread in single panel mode, a `Thread` sheet is pushed on to the workspace and appears after a brief transition. diff --git a/internal_packages/onboarding/lib/initial-preferences-page.cjsx b/internal_packages/onboarding/lib/initial-preferences-page.cjsx index e76d56599..c36428172 100644 --- a/internal_packages/onboarding/lib/initial-preferences-page.cjsx +++ b/internal_packages/onboarding/lib/initial-preferences-page.cjsx @@ -16,11 +16,18 @@ class AppearanceModeOption extends React.Component render: => classname = "appearance-mode" classname += " active" if @props.active + + label = { + 'list': 'Single Panel' + 'split': 'Two Panel' + }[@props.mode] +
-
{@props.mode} View
+
{label}
+ class InitialPreferencesOptions extends React.Component @propTypes: config: React.PropTypes.object @@ -66,8 +73,8 @@ class InitialPreferencesOptions extends React.Component

- Do you prefer a single-panel Gmail-style - layout or a dual panel layout? + Do you prefer a single panel layout (like Gmail) + or a two panel layout?

{['list', 'split'].map (mode) => diff --git a/internal_packages/preferences/lib/tabs/workspace-section.cjsx b/internal_packages/preferences/lib/tabs/workspace-section.cjsx index 6163a832f..3f62e8cd7 100644 --- a/internal_packages/preferences/lib/tabs/workspace-section.cjsx +++ b/internal_packages/preferences/lib/tabs/workspace-section.cjsx @@ -79,9 +79,15 @@ class AppearanceModeOption extends React.Component render: => classname = "appearance-mode" classname += " active" if @props.active + + label = { + 'list': 'Single Panel' + 'split': 'Two Panel' + }[@props.mode] +
-
{@props.mode} View
+
{label}
class WorkspaceSection extends React.Component