mirror of
https://github.com/samuelclay/NewsBlur.git
synced 2025-08-19 21:08:25 +00:00
Highlighting feeds when clicking on folders.
This commit is contained in:
parent
c1eb3b7534
commit
8644c6ae48
2 changed files with 62 additions and 12 deletions
|
@ -10846,6 +10846,11 @@ form.opml_import_form input {
|
||||||
.NB-modal-organizer .feed.NB-highlighted .NB-feed-exception-icon {
|
.NB-modal-organizer .feed.NB-highlighted .NB-feed-exception-icon {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
.NB-modal-organizer .feed.selected {
|
||||||
|
background: none;
|
||||||
|
border-top: 1px solid transparent;
|
||||||
|
border-bottom: 1px solid transparent;
|
||||||
|
}
|
||||||
.NB-modal-organizer .feed {
|
.NB-modal-organizer .feed {
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,6 +20,7 @@ NEWSBLUR.Views.Folder = Backbone.View.extend({
|
||||||
"click .NB-feedbar-mark-feed-read-time" : "mark_folder_as_read_days",
|
"click .NB-feedbar-mark-feed-read-time" : "mark_folder_as_read_days",
|
||||||
"click .NB-feedbar-options" : "open_options_popover",
|
"click .NB-feedbar-options" : "open_options_popover",
|
||||||
"click .NB-story-title-indicator" : "show_hidden_story_titles",
|
"click .NB-story-title-indicator" : "show_hidden_story_titles",
|
||||||
|
"mousedown .folder_title" : "highlight_feeds",
|
||||||
"mouseenter" : "add_hover_inverse",
|
"mouseenter" : "add_hover_inverse",
|
||||||
"mouseleave" : "remove_hover_inverse"
|
"mouseleave" : "remove_hover_inverse"
|
||||||
},
|
},
|
||||||
|
@ -80,7 +81,13 @@ NEWSBLUR.Views.Folder = Backbone.View.extend({
|
||||||
var $feeds = _.compact(this.collection.map(function(item) {
|
var $feeds = _.compact(this.collection.map(function(item) {
|
||||||
if (item.is_feed()) {
|
if (item.is_feed()) {
|
||||||
if (!feed_chooser && !item.feed.get('active')) return;
|
if (!feed_chooser && !item.feed.get('active')) return;
|
||||||
var feed_title_view = new NEWSBLUR.Views.FeedTitleView({
|
var feed_title_view = _.detect(item.feed.views, function(view) {
|
||||||
|
if (view.options.feed_chooser == feed_chooser) {
|
||||||
|
return view;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
if (!feed_title_view) {
|
||||||
|
feed_title_view = new NEWSBLUR.Views.FeedTitleView({
|
||||||
model: item.feed,
|
model: item.feed,
|
||||||
type: 'feed',
|
type: 'feed',
|
||||||
depth: depth,
|
depth: depth,
|
||||||
|
@ -92,6 +99,7 @@ NEWSBLUR.Views.Folder = Backbone.View.extend({
|
||||||
}).render();
|
}).render();
|
||||||
item.feed.views.push(feed_title_view);
|
item.feed.views.push(feed_title_view);
|
||||||
item.feed.folders.push(folder_collection);
|
item.feed.folders.push(folder_collection);
|
||||||
|
}
|
||||||
return feed_title_view.el;
|
return feed_title_view.el;
|
||||||
} else if (item.is_folder()) {
|
} else if (item.is_folder()) {
|
||||||
var folder_view = new NEWSBLUR.Views.Folder({
|
var folder_view = new NEWSBLUR.Views.Folder({
|
||||||
|
@ -382,6 +390,43 @@ NEWSBLUR.Views.Folder = Backbone.View.extend({
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
all_children_highlighted: function() {
|
||||||
|
var folder_title = this.options.folder_title;
|
||||||
|
var all_children_highlighted = this.collection.all(function(item) {
|
||||||
|
if (item.is_feed()) {
|
||||||
|
return item.feed.highlighted_in_folder(folder_title);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
|
||||||
|
return all_children_highlighted;
|
||||||
|
},
|
||||||
|
|
||||||
|
highlight_feeds: function() {
|
||||||
|
if (!this.options.feed_chooser) return;
|
||||||
|
var all_children_highlighted = this.all_children_highlighted();
|
||||||
|
var folder_title = this.options.folder_title;
|
||||||
|
|
||||||
|
this.collection.each(function(item) {
|
||||||
|
if (item.is_feed()) {
|
||||||
|
var view = _.detect(item.feed.views, function(view) {
|
||||||
|
if (view.options.feed_chooser &&
|
||||||
|
view.options.folder_title == folder_title) {
|
||||||
|
return view;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!view) return;
|
||||||
|
|
||||||
|
if (all_children_highlighted) {
|
||||||
|
view.highlight(false, true);
|
||||||
|
} else {
|
||||||
|
view.highlight(true, false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
mark_folder_as_read: function(e, days_back) {
|
mark_folder_as_read: function(e, days_back) {
|
||||||
NEWSBLUR.reader.mark_folder_as_read(this.model, days_back);
|
NEWSBLUR.reader.mark_folder_as_read(this.model, days_back);
|
||||||
this.$('.NB-feedbar-mark-feed-read-container').fadeOut(400);
|
this.$('.NB-feedbar-mark-feed-read-container').fadeOut(400);
|
||||||
|
|
Loading…
Add table
Reference in a new issue