Fade message dots faster when marked read by cursor.

(imported from commit a31b0601bf13bce377c24fff96a818023d5bdd1f)
This commit is contained in:
Kevin Mehall 2013-07-26 11:19:13 -04:00
parent 0cbee97ffd
commit 112d37de86
3 changed files with 34 additions and 19 deletions

View File

@ -681,8 +681,14 @@ MessageList.prototype = {
row.find(".message_edit").hide();
},
show_message_as_read: function (message) {
rows.get(message.id, this.table_name).removeClass('unread');
show_message_as_read: function (message, options) {
var row = rows.get(message.id, this.table_name);
if (options.from === 'pointer' && feature_flags.mark_read_at_bottom) {
row.find('.unread_marker').addClass('fast_fade');
} else {
row.find('.unread_marker').addClass('slow_fade');
}
row.removeClass('unread');
},
rerender: function MessageList_rerender() {

View File

@ -308,7 +308,8 @@ function process_loaded_for_unread(messages) {
}
// Takes a list of messages and marks them as read
function process_read_messages(messages) {
function process_read_messages(messages, options) {
options = options || {};
var processed = [];
_.each(messages, function (message) {
@ -316,10 +317,12 @@ function process_read_messages(messages) {
message.flags.push('read');
processed.push(message.id);
message.unread = false;
unread.process_read_message(message);
home_msg_list.show_message_as_read(message);
all_msg_list.show_message_as_read(message);
if (narrowed_msg_list) narrowed_msg_list.show_message_as_read(message);
unread.process_read_message(message, options);
home_msg_list.show_message_as_read(message, options);
all_msg_list.show_message_as_read(message, options);
if (narrowed_msg_list) {
narrowed_msg_list.show_message_as_read(message, options);
}
});
@ -357,20 +360,20 @@ function process_visible_unread_messages(update_cursor) {
}
}
function mark_messages_as_read(msg_list) {
function mark_messages_as_read(msg_list, options) {
var unread_msgs = _.filter(msg_list, unread.message_unread);
process_read_messages(unread_msgs);
process_read_messages(unread_msgs, options);
}
function mark_current_list_as_read() {
function mark_current_list_as_read(options) {
var unread_msgs = _.filter(current_msg_list.all(), unread.message_unread);
process_read_messages(unread_msgs);
process_read_messages(unread_msgs, options);
}
function mark_message_as_read(message) {
function mark_message_as_read(message, options) {
// This seems like a rather pointless wrapper, but
// process_read_messages() should stay as an internal API.
process_read_messages([message]);
process_read_messages([message], options);
}
function respond_to_message(opts) {
@ -489,7 +492,7 @@ $(function () {
} else {
messages = message_range(event.msg_list, event.previously_selected, event.id);
}
mark_messages_as_read(messages);
mark_messages_as_read(messages, {from: 'pointer'});
_.each(messages, function (message) {
message_tour.visit(message.id);
});

View File

@ -686,10 +686,20 @@ td.pointer {
opacity: 0;
box-shadow: inset 1px 1px 1px -1px #000;
border: 1px solid #fff;
}
.messagebox .unread_marker.slow_fade {
-webkit-transition: all 2.7s ease-in;
-moz-transition: all 2.7s ease-in;
-o-transition: all 2.7s ease-in;
transition: all 2.7s ease-in;
transition: all 2.7s ease-in;
}
.messagebox .unread_marker.fast_fade {
-webkit-transition: all 0.3s ease-in;
-moz-transition: all 0.3s ease-in;
-o-transition: all 0.3s ease-in;
transition: all 0.3s ease-in;
}
.include-sender .messagebox .unread_marker {
@ -698,10 +708,6 @@ td.pointer {
.unread .unread_marker {
opacity: 1;
-webkit-transition: all 2.7s ease-in;
-moz-transition: all 2.7s ease-in;
-o-transition: all 2.7s ease-in;
transition: all 2.7s ease-in;
}
/* Selected messages use an inset box shadow to highlight, with