mirror of
https://github.com/viq/NewsBlur.git
synced 2025-09-18 21:43:31 +00:00
Fixing 'n' key to work with social feeds. Also scrolling feed list to follow selected site.
This commit is contained in:
parent
b9fdf5e885
commit
a200a9db2d
3 changed files with 42 additions and 26 deletions
|
@ -370,15 +370,15 @@ body.NB-theme-serif #story_pane .NB-feed-story-content {
|
||||||
height: auto !important;
|
height: auto !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.NB-feedlist .NB-socialfeeds .feed {
|
.NB-feedlists .NB-socialfeeds .feed {
|
||||||
background-color: #C6D3E6;
|
background-color: #C6D3E6;
|
||||||
border-top-color: #C6D3E6;
|
border-top-color: #C6D3E6;
|
||||||
border-bottom-color: #C6D3E6;
|
border-bottom-color: #C6D3E6;
|
||||||
}
|
}
|
||||||
.NB-feedlist .NB-socialfeeds {
|
.NB-feedlists .NB-socialfeeds {
|
||||||
border-bottom: 1px solid #A0A0A0;
|
border-bottom: 1px solid #A0A0A0;
|
||||||
}
|
}
|
||||||
.NB-feedlist .NB-socialfeeds .feed .feed_title {
|
..NB-feedlists .NB-socialfeeds .feed .feed_title {
|
||||||
text-shadow: 0 1px 0 #DAE2E8;
|
text-shadow: 0 1px 0 #DAE2E8;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -403,11 +403,11 @@ body.NB-theme-serif #story_pane .NB-feed-story-content {
|
||||||
cursor: default;
|
cursor: default;
|
||||||
}
|
}
|
||||||
|
|
||||||
.NB-feedlist ::-moz-selection {
|
.NB-feedlists ::-moz-selection {
|
||||||
background: transparent;
|
background: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
.NB-feedlist ::selection {
|
.NB-feedlists ::selection {
|
||||||
background: transparent;
|
background: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -488,8 +488,7 @@ body.NB-theme-serif #story_pane .NB-feed-story-content {
|
||||||
color: #A0A0A0;
|
color: #A0A0A0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#feed_list.NB-feedlist .feed.NB-feed-inactive,
|
.NB-feedlist .feed.NB-feed-inactive {
|
||||||
.NB-feedlist.NB-socialfeeds .feed.NB-feed-inactive {
|
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
this.story_view = 'page';
|
this.story_view = 'page';
|
||||||
this.$s = {
|
this.$s = {
|
||||||
$body: $('body'),
|
$body: $('body'),
|
||||||
|
$feed_lists: $('.NB-feedlists'),
|
||||||
$feed_list: $('#feed_list'),
|
$feed_list: $('#feed_list'),
|
||||||
$social_feeds: $('.NB-socialfeeds'),
|
$social_feeds: $('.NB-socialfeeds'),
|
||||||
$story_titles: $('#story_titles'),
|
$story_titles: $('#story_titles'),
|
||||||
|
@ -826,8 +827,13 @@
|
||||||
} else {
|
} else {
|
||||||
// Find next feed with unreads
|
// Find next feed with unreads
|
||||||
var $next_feed = this.get_next_unread_feed(1);
|
var $next_feed = this.get_next_unread_feed(1);
|
||||||
var next_feed_id = parseInt($next_feed.data('id'), 10);
|
var next_feed_id = $next_feed.data('id');
|
||||||
this.open_feed(next_feed_id, {force: true, $feed_link: $next_feed});
|
if (NEWSBLUR.utils.is_feed_social(next_feed_id)) {
|
||||||
|
this.open_social_stories(next_feed_id, {force: true, $feed_link: $next_feed});
|
||||||
|
} else {
|
||||||
|
next_feed_id = parseInt(next_feed_id, 10);
|
||||||
|
this.open_feed(next_feed_id, {force: true, $feed_link: $next_feed});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -923,29 +929,38 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
scroll_feed_list_to_show_selected_feed: function($feed) {
|
||||||
|
$feed = $feed || this.find_feed_in_feed_list(this.active_feed);
|
||||||
|
if (!$feed) return;
|
||||||
|
var $feed_lists = this.$s.$feed_lists;
|
||||||
|
var is_feed_visible = $feed_lists.isScrollVisible($feed);
|
||||||
|
if (!is_feed_visible) {
|
||||||
|
var container_offset = $feed_lists.position().top;
|
||||||
|
var scroll = $feed.position().top;
|
||||||
|
var container = $feed_lists.scrollTop();
|
||||||
|
var height = $feed_lists.outerHeight();
|
||||||
|
$feed_lists.scrollTop(scroll+container-height/5);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
show_next_feed: function(direction, $current_feed) {
|
show_next_feed: function(direction, $current_feed) {
|
||||||
var $feed_list = this.$s.$feed_list;
|
var $feed_list = this.$s.$feed_list.add(this.$s.$social_feeds);
|
||||||
var $next_feed = this.get_next_feed(direction, $current_feed);
|
var $next_feed = this.get_next_feed(direction, $current_feed);
|
||||||
|
|
||||||
var feed_id = parseInt($next_feed.data('id'), 10);
|
var next_feed_id = $next_feed.data('id');
|
||||||
if (feed_id && feed_id == this.active_feed) {
|
if (next_feed_id && next_feed_id == this.active_feed) {
|
||||||
this.show_next_feed(direction, $next_feed);
|
this.show_next_feed(direction, $next_feed);
|
||||||
} else if (feed_id) {
|
} else if (NEWSBLUR.utils.is_feed_social(next_feed_id)) {
|
||||||
var position = $feed_list.scrollTop() + $next_feed.offset().top - $next_feed.outerHeight();
|
this.open_social_stories(next_feed_id, {force: true, $feed_link: $next_feed});
|
||||||
var showing = $feed_list.height() - 100;
|
} else {
|
||||||
if (position > showing) {
|
next_feed_id = parseInt(next_feed_id, 10);
|
||||||
scroll = position;
|
this.open_feed(next_feed_id, {force: true, $feed_link: $next_feed});
|
||||||
} else {
|
|
||||||
scroll = 0;
|
|
||||||
}
|
|
||||||
$feed_list.scrollTop(scroll);
|
|
||||||
this.open_feed(feed_id, {delay: 350, $feed_link: $next_feed});
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
get_next_feed: function(direction, $current_feed) {
|
get_next_feed: function(direction, $current_feed) {
|
||||||
var self = this;
|
var self = this;
|
||||||
var $feed_list = this.$s.$feed_list;
|
var $feed_list = this.$s.$feed_list.add(this.$s.$social_feeds);
|
||||||
var $current_feed = $current_feed || $('.selected', $feed_list);
|
var $current_feed = $current_feed || $('.selected', $feed_list);
|
||||||
var $next_feed,
|
var $next_feed,
|
||||||
scroll;
|
scroll;
|
||||||
|
@ -968,7 +983,7 @@
|
||||||
|
|
||||||
get_next_unread_feed: function(direction, $current_feed) {
|
get_next_unread_feed: function(direction, $current_feed) {
|
||||||
var self = this;
|
var self = this;
|
||||||
var $feed_list = this.$s.$feed_list;
|
var $feed_list = this.$s.$feed_list.add(this.$s.$social_feeds);
|
||||||
$current_feed = $current_feed || $('.selected', $feed_list);
|
$current_feed = $current_feed || $('.selected', $feed_list);
|
||||||
var unread_view = this.get_unread_view_name();
|
var unread_view = this.get_unread_view_name();
|
||||||
var $next_feed;
|
var $next_feed;
|
||||||
|
@ -1433,7 +1448,7 @@
|
||||||
axis: 'y',
|
axis: 'y',
|
||||||
distance: 4,
|
distance: 4,
|
||||||
cursor: 'move',
|
cursor: 'move',
|
||||||
containment: '.NB-feedlist',
|
containment: '#feed_list',
|
||||||
tolerance: 'pointer',
|
tolerance: 'pointer',
|
||||||
scrollSensitivity: 35,
|
scrollSensitivity: 35,
|
||||||
start: function(e, ui) {
|
start: function(e, ui) {
|
||||||
|
@ -1912,6 +1927,7 @@
|
||||||
this.make_feed_title_in_stories(feed_id);
|
this.make_feed_title_in_stories(feed_id);
|
||||||
this.show_feedbar_loading();
|
this.show_feedbar_loading();
|
||||||
this.switch_taskbar_view(this.story_view);
|
this.switch_taskbar_view(this.story_view);
|
||||||
|
this.scroll_feed_list_to_show_selected_feed();
|
||||||
|
|
||||||
_.delay(_.bind(function() {
|
_.delay(_.bind(function() {
|
||||||
if (!options.delay || feed_id == self.next_feed) {
|
if (!options.delay || feed_id == self.next_feed) {
|
||||||
|
@ -2345,6 +2361,7 @@
|
||||||
this.show_feedbar_loading();
|
this.show_feedbar_loading();
|
||||||
this.switch_taskbar_view('feed');
|
this.switch_taskbar_view('feed');
|
||||||
this.setup_mousemove_on_views();
|
this.setup_mousemove_on_views();
|
||||||
|
this.scroll_feed_list_to_show_selected_feed();
|
||||||
|
|
||||||
this.show_stories_progress_bar();
|
this.show_stories_progress_bar();
|
||||||
this.model.fetch_social_stories(this.active_feed, feed.user_id, 1,
|
this.model.fetch_social_stories(this.active_feed, feed.user_id, 1,
|
||||||
|
|
|
@ -437,7 +437,7 @@
|
||||||
|
|
||||||
<div class="left-center">
|
<div class="left-center">
|
||||||
|
|
||||||
<div class="left-center-content NB-feedlist">
|
<div class="left-center-content NB-feedlists">
|
||||||
<div id="NB-feeds-list-loader">Everything is on its way...</div>
|
<div id="NB-feeds-list-loader">Everything is on its way...</div>
|
||||||
<div class="NB-feeds-header-wrapper">
|
<div class="NB-feeds-header-wrapper">
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue