diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2016-11-02 22:29:19 +0100 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2016-11-02 22:29:19 +0100 |
commit | 4b357ecf98f373f5ed31c71ecc1a79d23572cd00 (patch) | |
tree | b0c81653896add9880f17738b17738e42deb7a88 /app | |
parent | d427df4a8ae16809b068aca8c65006de2ccbd27e (diff) |
Fix subtle bugs, new icon button
Diffstat (limited to 'app')
-rw-r--r-- | app/assets/javascripts/components/components/icon_button.jsx | 10 | ||||
-rw-r--r-- | app/lib/feed_manager.rb | 2 | ||||
-rw-r--r-- | app/services/precompute_feed_service.rb | 2 |
3 files changed, 9 insertions, 5 deletions
diff --git a/app/assets/javascripts/components/components/icon_button.jsx b/app/assets/javascripts/components/components/icon_button.jsx index 085c18541..663728f34 100644 --- a/app/assets/javascripts/components/components/icon_button.jsx +++ b/app/assets/javascripts/components/components/icon_button.jsx @@ -28,15 +28,19 @@ const IconButton = React.createClass({ render () { const style = { display: 'inline-block', + border: 'none', + padding: '0', + background: 'transparent', fontSize: `${this.props.size}px`, - width: `${this.props.size}px`, + width: `${this.props.size * 1.28571429}px`, height: `${this.props.size}px`, - lineHeight: `${this.props.size}px` + lineHeight: `${this.props.size}px`, + cursor: 'pointer' }; return ( <button aria-label={this.props.title} title={this.props.title} className={`icon-button ${this.props.active ? 'active' : ''}`} onClick={this.handleClick} style={style}> - <i className={`fa fa-fw fa-${this.props.icon}`} aria-hidden='true'></i> + <i className={`fa fa-fw fa-${this.props.icon}`} aria-hidden='true' /> </button> ); } diff --git a/app/lib/feed_manager.rb b/app/lib/feed_manager.rb index 46a105124..0b04ad7ff 100644 --- a/app/lib/feed_manager.rb +++ b/app/lib/feed_manager.rb @@ -61,7 +61,7 @@ class FeedManager # Filter status out of the home feed if it is a reply to someone the user doesn't follow def filter_from_home?(status, receiver) - replied_to_user = status.reply? ? status.thread.account : nil + replied_to_user = status.reply? ? status.thread.try(:account) : nil (status.reply? && !(receiver.id == replied_to_user.id || replied_to_user.id == status.account_id || receiver.following?(replied_to_user))) || (status.reblog? && receiver.blocking?(status.reblog.account)) end diff --git a/app/services/precompute_feed_service.rb b/app/services/precompute_feed_service.rb index 6b259fe80..eb5f48575 100644 --- a/app/services/precompute_feed_service.rb +++ b/app/services/precompute_feed_service.rb @@ -6,7 +6,7 @@ class PrecomputeFeedService < BaseService def call(type, account, limit) instant_return = [] - Status.send("as_#{type}_timeline", account).order('created_at desc').limit(FeedManager::MAX_ITEMS).find_each do |status| + Status.send("as_#{type}_timeline", account).order('id desc').limit(FeedManager::MAX_ITEMS).find_each do |status| next if FeedManager.instance.filter?(type, status, account) redis.zadd(FeedManager.instance.key(type, account.id), status.id, status.id) instant_return << status unless instant_return.size > limit |