From 63b2e0560b36468c9d5061c89c50d5fd7a4577f0 Mon Sep 17 00:00:00 2001 From: dojineko Date: Wed, 9 Mar 2016 21:42:45 +0900 Subject: [PATCH 01/11] Focus to search box, when hotkey pushed --- lib/hotkey.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/hotkey.js b/lib/hotkey.js index 0940fe91..3573174d 100644 --- a/lib/hotkey.js +++ b/lib/hotkey.js @@ -67,7 +67,7 @@ function toggleMain () { mainWindow.minimize() mainWindow.restore() } - mainWindow.webContents.send('list-focus') + mainWindow.webContents.send('top-focus-search') } } @@ -114,4 +114,3 @@ ipc.on('hotkeyUpdated', function (event, newKeymap) { globalShortcut.unregisterAll() registerAllKeys() }) - From 127202b831dc0f601a6dc58a76c98eb28236b05c Mon Sep 17 00:00:00 2001 From: Rokt33r Date: Thu, 10 Mar 2016 20:32:59 +0900 Subject: [PATCH 02/11] Update contributing --- contributing.md | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) diff --git a/contributing.md b/contributing.md index fc85a7df..e4f02a17 100644 --- a/contributing.md +++ b/contributing.md @@ -1,16 +1,35 @@ # Contributing to Boostnote -> This is a temporary document. +> English below. -It is first time to maintain OSS project for me(Rokt33r). So, I want to watch what's going on here. +## About Pull Request -**This means you can do whatever you want until I ask to stop it.** +### やり方 -But I want to make only one thing sure. +現状特に`dev`ブランチを用意しないつもりなので、最新VersionのブランチにPullrequestを送ってください。 -**If you make a pull request, It means you agree to transfer the copyright of the code changes to MAISIN&CO.** +### Pull requsetの著作権 -This is because our team want to have an option to change LICENSE of this app. -> It doesn't mean Boostnote will become a paid app. If we want to earn some money, We will try other way, which is some kind of cloud storage or Mobile app integration. -> We thought this is needed to replace the license with much freer one(like BSD, MIT). +Pull requestをすることはその変化分のコードの著作権をMAISIN&CO.に譲渡することに同意することになります。 +アプリケーションのLicenseのをいつでも変える選択肢を残したいからです。 +しかし、これはいずれかBoostnoteが有料の商用アプリになる可能性がある話ではありません。 +もし、このアプリケーションで金を稼ごうとするならBoostnote専用のCloud storageの提供やMobile appとの連動、何か特殊なプレミアム機能の提供など形になると思います。 +現在考えられているのは、GPL v3の場合、他のライセンスとの互換が不可能であるため、もしより自由なLicense(BSD, MIT)に変える時に改めて著作権者としてライセンスし直す選択肢を残したいぐらいのイメージです。 + +--- + +# Contributing to Boostnote(ENG) + +## About Pull Request + +### How to + +Make a new PR to the branch named latest version. This is because there is no `dev` branch currently. + +### Copyright of Pull Request + +If you make a pull request, It means you agree to transfer the copyright of the code changes to MAISIN&CO. + +It doesn't mean Boostnote will become a paid app. If we want to earn some money, We will try other way, which is some kind of cloud storage, Mobile app integration or some SPECIAL features. +Because GPL v3 is too strict to be compatible with any other License, We thought this is needed to replace the license with much freer one(like BSD, MIT) somewhen. From 1c9c59c512d5f7864fc5af60825f47876b4d0f4e Mon Sep 17 00:00:00 2001 From: Rokt33r Date: Sun, 13 Mar 2016 23:03:50 +0900 Subject: [PATCH 03/11] add Link of Trello Kanban to readme.md --- readme.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/readme.md b/readme.md index 2d3b6169..11405932 100644 --- a/readme.md +++ b/readme.md @@ -2,6 +2,14 @@ Simple note app +## Progress Kanban + +https://trello.com/b/wJlinZJx/boostnote-todo-list + +This is a public Kanban board. Also everyone can comment here. + +If you want to join us, ask me to add you. + ## Develop 1. turn on HMR server From db7f339c3474d6a2056f885a953d6d749aad9aa9 Mon Sep 17 00:00:00 2001 From: Rokt33r Date: Tue, 15 Mar 2016 01:32:31 +0900 Subject: [PATCH 04/11] set Editor fontFamily to Title input --- browser/main/HomePage/ArticleDetail/index.js | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/browser/main/HomePage/ArticleDetail/index.js b/browser/main/HomePage/ArticleDetail/index.js index 93529d0f..efd84c3a 100644 --- a/browser/main/HomePage/ArticleDetail/index.js +++ b/browser/main/HomePage/ArticleDetail/index.js @@ -15,6 +15,12 @@ import DeleteArticleModal from '../../modal/DeleteArticleModal' import ArticleEditor from './ArticleEditor' const electron = require('electron') const ipc = electron.ipcRenderer +import fetchConfig from 'browser/lib/fetchConfig' + +let config = fetchConfig() +ipc.on('config-apply', function (e, newConfig) { + config = newConfig +}) const BRAND_COLOR = '#18AF90' const OSX = global.process.platform === 'darwin' @@ -83,10 +89,12 @@ export default class ArticleDetail extends React.Component { if (isModalOpen()) return true if (this.refs.editor) this.refs.editor.switchPreviewMode() } + this.configApplyHandler = (e, config) => this.handleConfigApply(e, config) this.state = { article: Object.assign({content: ''}, props.activeArticle), - openShareDropdown: false + openShareDropdown: false, + fontFamily: config['editor-font-family'] } } @@ -101,6 +109,7 @@ export default class ArticleDetail extends React.Component { ipc.on('detail-title', this.titleHandler) ipc.on('detail-edit', this.editHandler) ipc.on('detail-preview', this.previewHandler) + ipc.on('config-apply', this.configApplyHandler) } componentWillUnmount () { @@ -123,6 +132,12 @@ export default class ArticleDetail extends React.Component { } } + handleConfigApply (e, config) { + this.setState({ + fontFamily: config['editor-font-family'] + }) + } + renderEmpty () { return (
@@ -309,6 +324,9 @@ export default class ArticleDetail extends React.Component { ref='title' value={activeArticle.title} onChange={e => this.handleTitleChange(e)} + style={{ + fontFamily: this.state.fontFamily + }} />
Date: Tue, 15 Mar 2016 02:24:28 +0900 Subject: [PATCH 05/11] ctrl + wheel to change zoom factor --- browser/main/MainPage.js | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/browser/main/MainPage.js b/browser/main/MainPage.js index b48f39d9..4cfe6df1 100644 --- a/browser/main/MainPage.js +++ b/browser/main/MainPage.js @@ -19,9 +19,27 @@ export default class MainContainer extends React.Component { ipc.send('update-app', 'Deal with it.') } + handleWheel (e) { + if (e.ctrlKey && process.platform !== 'darwin') { + if (window.document.body.style.zoom == null) { + window.document.body.style.zoom = 1 + } + console.log(window.document.body.style.zoom) + let zoom = Number(window.document.body.style.zoom) + if (e.deltaY > 0 && zoom < 4) { + document.body.style.zoom = zoom + 0.05 + } else if (e.deltaY < 0 && zoom > 0.5) { + document.body.style.zoom = zoom - 0.05 + } + } + } + render () { return ( -
+
this.handleWheel(e)} + > {this.state.updateAvailable ? ( ) : null} From b65101f4bed576cb04a69c0754eb866b7793ecad Mon Sep 17 00:00:00 2001 From: Rokt33r Date: Tue, 15 Mar 2016 14:05:33 +0900 Subject: [PATCH 06/11] fix emacs key binding --- browser/components/CodeEditor.js | 11 +++++++++++ browser/main/MainPage.js | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/browser/components/CodeEditor.js b/browser/components/CodeEditor.js index be5500e5..b1b463c7 100644 --- a/browser/components/CodeEditor.js +++ b/browser/components/CodeEditor.js @@ -40,11 +40,22 @@ export default class CodeEditor extends React.Component { this.execHandler = (e) => { console.log(e.command.name) switch (e.command.name) { + case 'gotolinestart': + e.preventDefault() + { + let position = this.editor.getCursorPosition() + this.editor.navigateTo(position.row, 0) + } + break case 'gotolineend': e.preventDefault() let position = this.editor.getCursorPosition() this.editor.navigateTo(position.row, this.editor.getSession().getLine(position.row).length) break + case 'jumptomatching': + e.preventDefault() + this.editor.navigateUp() + break case 'removetolineend': e.preventDefault() let range = this.editor.getSelectionRange() diff --git a/browser/main/MainPage.js b/browser/main/MainPage.js index 4cfe6df1..1514d4d8 100644 --- a/browser/main/MainPage.js +++ b/browser/main/MainPage.js @@ -24,7 +24,7 @@ export default class MainContainer extends React.Component { if (window.document.body.style.zoom == null) { window.document.body.style.zoom = 1 } - console.log(window.document.body.style.zoom) + let zoom = Number(window.document.body.style.zoom) if (e.deltaY > 0 && zoom < 4) { document.body.style.zoom = zoom + 0.05 From bb0872b4fc3897356ba0ee7e882eb3667b6409fe Mon Sep 17 00:00:00 2001 From: Rokt33r Date: Tue, 15 Mar 2016 15:51:35 +0900 Subject: [PATCH 07/11] tags in ArticleList will be wrapped properly --- browser/styles/main/ArticleList.styl | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/browser/styles/main/ArticleList.styl b/browser/styles/main/ArticleList.styl index ee0da8c1..f1c52732 100644 --- a/browser/styles/main/ArticleList.styl +++ b/browser/styles/main/ArticleList.styl @@ -16,7 +16,7 @@ articleItemColor = #777 .ArticleList-item border solid 2px transparent position relative - height 110px + min-height 110px width 100% cursor pointer transition 0.1s @@ -68,12 +68,13 @@ articleItemColor = #777 code font-family Monaco, Menlo, 'Ubuntu Mono', Consolas, source-code-pro, monospace .ArticleList-item-bottom - overflow-x auto - white-space nowrap - padding-top 6px + padding-bottom 5px .tags + word-wrap break-word color articleItemColor - height 14px + line-height 18px + i.fa-tags + display inline a background-color brandColor color white From b53ff5daf37b001932c4e807f5d00cf56fb8dd78 Mon Sep 17 00:00:00 2001 From: Rokt33r Date: Tue, 15 Mar 2016 16:09:17 +0900 Subject: [PATCH 08/11] fix again(never break long tag) --- browser/styles/main/ArticleList.styl | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/browser/styles/main/ArticleList.styl b/browser/styles/main/ArticleList.styl index f1c52732..3efee6f1 100644 --- a/browser/styles/main/ArticleList.styl +++ b/browser/styles/main/ArticleList.styl @@ -70,17 +70,25 @@ articleItemColor = #777 .ArticleList-item-bottom padding-bottom 5px .tags - word-wrap break-word color articleItemColor line-height 18px + word-wrap break-word + clearfix() i.fa-tags display inline + float left + padding 2px 2px 0 0 + height 14px + line-height 13px a background-color brandColor + float left color white border-radius 2px padding 1px 5px margin 2px + height 14px + line-height 13px font-size 10px opacity 0.8 &:hover From bed4b7fd27f0a776274dd971ec85a65b0df11ee8 Mon Sep 17 00:00:00 2001 From: Rokt33r Date: Tue, 15 Mar 2016 16:17:39 +0900 Subject: [PATCH 09/11] bump up electron version to 0.36.11 --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 78031b17..98e6099f 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "webpack": "webpack-dev-server --hot --inline --config webpack.config.js" }, "config": { - "electron-version": "0.36.10" + "electron-version": "0.36.11" }, "repository": { "type": "git", @@ -56,7 +56,7 @@ "babel-preset-react-hmre": "^1.0.1", "css-loader": "^0.19.0", "electron-packager": "^5.1.0", - "electron-prebuilt": "^0.36.10", + "electron-prebuilt": "^0.36.11", "electron-release": "^2.2.0", "grunt": "^0.4.5", "grunt-electron-installer": "^1.2.0", From aef07121657e5d8174b0a169ae703014e1450eeb Mon Sep 17 00:00:00 2001 From: Rokt33r Date: Wed, 16 Mar 2016 08:02:46 +0900 Subject: [PATCH 10/11] fix style bug of TagSelect --- browser/styles/main/ArticleDetail.styl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/browser/styles/main/ArticleDetail.styl b/browser/styles/main/ArticleDetail.styl index 1fcfcc57..53180659 100644 --- a/browser/styles/main/ArticleDetail.styl +++ b/browser/styles/main/ArticleDetail.styl @@ -257,9 +257,10 @@ infoButton() width 150px max-height 150px background-color white - z-index 5 + z-index 50 border 1px solid borderColor border-radius 5px + overflow-y auto &>button width 100% display block From f75e8724151c0bf270e82171fc59492c024e6575 Mon Sep 17 00:00:00 2001 From: Rokt33r Date: Wed, 16 Mar 2016 08:08:42 +0900 Subject: [PATCH 11/11] configuring zoomfactor with Ctrl + Wheelscroll only works on windows and linux --- browser/main/MainPage.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/browser/main/MainPage.js b/browser/main/MainPage.js index 1514d4d8..fb729bd5 100644 --- a/browser/main/MainPage.js +++ b/browser/main/MainPage.js @@ -20,7 +20,7 @@ export default class MainContainer extends React.Component { } handleWheel (e) { - if (e.ctrlKey && process.platform !== 'darwin') { + if (e.ctrlKey && global.process.platform !== 'darwin') { if (window.document.body.style.zoom == null) { window.document.body.style.zoom = 1 }