diff --git a/browser/components/CodeEditor.js b/browser/components/CodeEditor.js index 83bb8025..6ca06ab3 100644 --- a/browser/components/CodeEditor.js +++ b/browser/components/CodeEditor.js @@ -23,7 +23,6 @@ export default class CodeEditor extends React.Component { } el = el.parentNode } - console.log(isStillFocused) if (!isStillFocused && this.props.onBlur != null) this.props.onBlur(e) } @@ -165,7 +164,7 @@ export default class CodeEditor extends React.Component { let syntaxMode = mode != null ? mode.mode : 'text' - session.setMode('ace/mode' + syntaxMode) + session.setMode('ace/mode/' + syntaxMode) } if (prevProps.theme !== this.props.theme) { editor.setTheme('ace/theme/' + this.props.theme) diff --git a/browser/main/ArticleList.js b/browser/main/ArticleList.js deleted file mode 100644 index bcc7d6c3..00000000 --- a/browser/main/ArticleList.js +++ /dev/null @@ -1,144 +0,0 @@ -import React, { PropTypes } from 'react' -import ReactDOM from 'react-dom' -import ModeIcon from 'browser/components/ModeIcon' -import moment from 'moment' -import FolderMark from 'browser/components/FolderMark' -import _ from 'lodash' - -const electron = require('electron') -const remote = electron.remote -const ipc = electron.ipcRenderer - -export default class ArticleList extends React.Component { - constructor (props) { - super(props) - - this.focusHandler = (e) => this.focus() - } - - componentDidMount () { - this.refreshTimer = setInterval(() => this.forceUpdate(), 60 * 1000) - ipc.on('list-focus', this.focusHandler) - this.focus() - } - - componentWillUnmount () { - clearInterval(this.refreshTimer) - ipc.removeListener('list-focus', this.focusHandler) - } - - componentDidUpdate () { - return false - var index = articles.indexOf(null) - var el = ReactDOM.findDOMNode(this) - var li = el.querySelectorAll('.ArticleList>div')[index] - - if (li == null) { - return - } - - var overflowBelow = el.clientHeight + el.scrollTop < li.offsetTop + li.clientHeight - if (overflowBelow) { - el.scrollTop = li.offsetTop + li.clientHeight - el.clientHeight - } - var overflowAbove = el.scrollTop > li.offsetTop - if (overflowAbove) { - el.scrollTop = li.offsetTop - } - } - - focus () { - ReactDOM.findDOMNode(this).focus() - } - - // 移動ができなかったらfalseを返す: - selectPriorArticle () { - let { articles, activeArticle, dispatch } = this.props - let targetIndex = articles.indexOf(activeArticle) - 1 - let targetArticle = articles[targetIndex] - - if (targetArticle != null) { - dispatch(switchArticle(targetArticle.key)) - return true - } - return false - } - - selectNextArticle () { - let { articles, activeArticle, dispatch } = this.props - let targetIndex = articles.indexOf(activeArticle) + 1 - let targetArticle = articles[targetIndex] - - if (targetArticle != null) { - dispatch(switchArticle(targetArticle.key)) - return true - } - return false - } - - handleArticleClick (article) { - let { dispatch } = this.props - return function (e) { - dispatch(switchArticle(article.key)) - } - } - - handleArticleListKeyDown (e) { - if (e.metaKey || e.ctrlKey) return true - - if (e.keyCode === 65 && !e.shiftKey) { - e.preventDefault() - remote.getCurrentWebContents().send('top-new-post') - } - - if (e.keyCode === 65 && e.shiftKey) { - e.preventDefault() - remote.getCurrentWebContents().send('nav-new-folder') - } - - if (e.keyCode === 68) { - e.preventDefault() - remote.getCurrentWebContents().send('detail-delete') - } - - if (e.keyCode === 84) { - e.preventDefault() - remote.getCurrentWebContents().send('detail-title') - } - - if (e.keyCode === 69) { - e.preventDefault() - remote.getCurrentWebContents().send('detail-edit') - } - - if (e.keyCode === 83) { - e.preventDefault() - remote.getCurrentWebContents().send('detail-save') - } - - if (e.keyCode === 38) { - e.preventDefault() - this.selectPriorArticle() - } - - if (e.keyCode === 40) { - e.preventDefault() - this.selectNextArticle() - } - } - - render () { - let articleElements = [] - - return ( -