diff --git a/browser/main/HomePage.js b/browser/main/HomePage.js index b7880825..69c65948 100644 --- a/browser/main/HomePage.js +++ b/browser/main/HomePage.js @@ -1,6 +1,6 @@ import React, { PropTypes} from 'react' import { connect } from 'react-redux' -import { CREATE_MODE, EDIT_MODE, IDLE_MODE, NEW, toggleTutorial } from 'boost/actions' +import { EDIT_MODE, IDLE_MODE, NEW, toggleTutorial } from 'boost/actions' // import UserNavigator from './HomePage/UserNavigator' import ArticleNavigator from './HomePage/ArticleNavigator' import ArticleTopBar from './HomePage/ArticleTopBar' @@ -57,7 +57,7 @@ class HomePage extends React.Component { } switch (status.mode) { - case CREATE_MODE: + case EDIT_MODE: if (e.keyCode === 27) { detail.handleCancelButtonClick() @@ -65,6 +65,13 @@ class HomePage extends React.Component { if ((e.keyCode === 13 && e.metaKey) || (e.keyCode === 83 && e.metaKey)) { detail.handleSaveButtonClick() } + if (e.keyCode === 80 && e.metaKey) { + detail.handleTogglePreviewButtonClick() + } + if (e.keyCode === 78 && e.metaKey) { + nav.handleNewPostButtonClick() + e.preventDefault() + } break case IDLE_MODE: if (e.keyCode === 69) { @@ -99,7 +106,7 @@ class HomePage extends React.Component { list.selectNextArticle() } - if (e.keyCode === 65 || e.keyCode === 13 && e.metaKey) { + if (e.keyCode === 65 || (e.keyCode === 13 && e.metaKey) || (e.keyCode === 78 && e.metaKey)) { nav.handleNewPostButtonClick() e.preventDefault() } @@ -257,7 +264,8 @@ HomePage.propTypes = { folder: PropTypes.array, tag: PropTypes.array, text: PropTypes.array - }) + }), + tags: PropTypes.array } export default connect(remap)(HomePage) diff --git a/browser/main/HomePage/ArticleDetail.js b/browser/main/HomePage/ArticleDetail.js index 60d51433..d77041c7 100644 --- a/browser/main/HomePage/ArticleDetail.js +++ b/browser/main/HomePage/ArticleDetail.js @@ -411,7 +411,9 @@ export default class ArticleDetail extends React.Component { } handleTogglePreviewButtonClick (e) { - this.setState({previewMode: !this.state.previewMode}) + if (this.state.article.mode === 'markdown') { + this.setState({previewMode: !this.state.previewMode}) + } } handleTitleKeyDown (e) { diff --git a/browser/main/HomePage/ArticleNavigator.js b/browser/main/HomePage/ArticleNavigator.js index f3721e60..269d528f 100644 --- a/browser/main/HomePage/ArticleNavigator.js +++ b/browser/main/HomePage/ArticleNavigator.js @@ -1,6 +1,6 @@ import React, { PropTypes } from 'react' import { findWhere } from 'lodash' -import { setSearchFilter, switchFolder, switchMode, switchArticle, updateArticle, EDIT_MODE } from 'boost/actions' +import { setSearchFilter, switchFolder, switchMode, switchArticle, updateArticle, clearNewArticle, EDIT_MODE } from 'boost/actions' import { openModal } from 'boost/modal' import FolderMark from 'boost/components/FolderMark' import Preferences from 'boost/components/modal/Preferences' @@ -85,6 +85,7 @@ export default class ArticleNavigator extends React.Component { status: 'NEW' } + dispatch(clearNewArticle()) dispatch(updateArticle(newArticle)) dispatch(switchArticle(newArticle.key, true)) dispatch(switchMode(EDIT_MODE))