1
0
mirror of https://github.com/BoostIo/Boostnote synced 2025-12-15 18:56:22 +00:00

Add: Refresh button

This commit is contained in:
Rokt33r
2015-07-30 14:40:14 +09:00
parent 45b99d13cd
commit ac0d81f9b3
4 changed files with 37 additions and 4 deletions

View File

@@ -1,6 +1,10 @@
var React = require('react/addons') var React = require('react/addons')
var ReactRouter = require('react-router')
var PlanetActions = require('../Actions/PlanetActions')
var PlanetHeader = React.createClass({ var PlanetHeader = React.createClass({
mixins: [ReactRouter.State],
propTypes: { propTypes: {
openSettingModal: React.PropTypes.func, openSettingModal: React.PropTypes.func,
currentPlanet: React.PropTypes.object, currentPlanet: React.PropTypes.object,
@@ -18,6 +22,10 @@ var PlanetHeader = React.createClass({
interceptClick: function (e) { interceptClick: function (e) {
e.stopPropagation() e.stopPropagation()
}, },
refreshPlanet: function () {
var params = this.getParams()
PlanetActions.fetchPlanet(params.userName, params.planetName)
},
render: function () { render: function () {
var currentPlanetName = this.props.currentPlanet.name var currentPlanetName = this.props.currentPlanet.name
var currentUserName = this.props.currentPlanet.userName var currentUserName = this.props.currentPlanet.userName
@@ -36,6 +44,8 @@ var PlanetHeader = React.createClass({
<i className='fa fa-search'/> <i className='fa fa-search'/>
<input onChange={this.props.onSearchChange} value={this.props.search} ref='search' tabIndex='1' type='text' className='inline-input circleInput' placeholder='Search...'/> <input onChange={this.props.onSearchChange} value={this.props.search} ref='search' tabIndex='1' type='text' className='inline-input circleInput' placeholder='Search...'/>
</div> </div>
<button onClick={this.refreshPlanet} className='refreshButton'><i className='fa fa-refresh'/></button>
<button className='settingButton'><i className='fa fa-gears'/></button>
</div> </div>
</div> </div>
) )

View File

@@ -363,7 +363,9 @@ module.exports = React.createClass({
keywords.unshift('$s') keywords.unshift('$s')
} }
this.setState({search: keywords.join(' ')}) this.setState({search: keywords.join(' ')}, function () {
this.selectArticleByIndex(0)
})
}, },
toggleBlueprintFilter: function () { toggleBlueprintFilter: function () {
var keywords = typeof this.state.search === 'string' ? this.state.search.split(' ') : [] var keywords = typeof this.state.search === 'string' ? this.state.search.split(' ') : []
@@ -389,7 +391,9 @@ module.exports = React.createClass({
keywords.unshift('$b') keywords.unshift('$b')
} }
this.setState({search: keywords.join(' ')}) this.setState({search: keywords.join(' ')}, function () {
this.selectArticleByIndex(0)
})
}, },
showOnlyWithTag: function (tag) { showOnlyWithTag: function (tag) {
return function () { return function () {

View File

@@ -81,6 +81,26 @@
top 8px top 8px
left 12px left 12px
color inactiveTextColor color inactiveTextColor
.refreshButton, .settingButton
display block
position absolute
top 12px
font-size em
btnDefault()
box-sizing border-box
circle()
width 28px
height 28px
text-align center
cursor pointer
transition 0.1s
&:focus, &.focus
outline none
.refreshButton
right 45px
.settingButton
right 10px
.PlanetNavigator .PlanetNavigator
absolute bottom left absolute bottom left

View File

@@ -7,8 +7,7 @@ buttonBorderColor = #4C4C4C
lightButtonColor = #898989 lightButtonColor = #898989
hoverBackgroundColor= transparentify(#444, 10%) hoverBackgroundColor= transparentify(#444, 3%)
activeBackgroundColor= transparentify(#888, 10%)
// v0.2.0 // v0.2.0
inactiveTextColor = #888 inactiveTextColor = #888