#kiwi .messages .msg .media.reddit .thumbnail { float:left; margin-right: 0.5em; }
+#kiwi .messages .last_seen {
+ border-bottom: #b0cf82 solid 1px;
+}
#kiwi .right_bar {
background-color: #DADADA;
}
#kiwi .messages .msg .media.reddit .thumbnail { float:left; margin-right: 0.5em; }
+#kiwi .messages .last_seen {
+ border-bottom-color: #090;
+ border-bottom-style: dashed;
+}
+
/* The server select dialog */
#kiwi .messages .msg.highlight { background:#D9D9D9; }
+#kiwi .messages .last_seen {
+ border-bottom-color: #B0CF82;
+}
+
+
#kiwi.chanlist_treeview .panels { left:160px; }
#kiwi.chanlist_treeview .toolbar { position:static; }
}
#kiwi .messages .msg .media.reddit .thumbnail { float:left; margin-right: 0.5em; }
+#kiwi .messages .last_seen {
+ border-bottom-color: #B0CF82;
+}
#kiwi .right_bar {
background-color: #DADADA;
_kiwi.model.Applet.register('kiwi_startup', applet);
-})();
\ No newline at end of file
+})();
that.has_focus = true;
});
$(window).on('blur', function () {
+ if (_kiwi.global.connections.active && _kiwi.global.connections.active.view.updateLastSeenMarker) {
+ _kiwi.global.connections.active.view.updateLastSeenMarker();
+ }
that.has_focus = false;
});
am_pm_locale_key = pm ?
'client_views_panel_timestamp_pm' :
'client_views_panel_timestamp_am';
+ this.updateLastSeenMarker();
+
msg.time_string = translateText(am_pm_locale_key, hour + ":" + msg.time.getMinutes().toString().lpad(2, "0") + ":" + msg.time.getSeconds().toString().lpad(2, "0"));
}
if (!nick) {
nick = $target.parent('.msg').data('message').nick;
}
+ },
+
+
+ updateLastSeenMarker: function() {
+ if (_kiwi.app.connections.active.view === this && _kiwi.app.view.has_focus) {
+ // Remove the previous last seen classes
+ var candidate = this.$(".last_seen");
+ if (candidate && candidate.length) {
+ candidate.removeClass("last_seen");
+ }
+
+ // Mark the last message the user saw
+ var last = this.$messages.children().last();
+ if (last) {
+ last.addClass("last_seen");
+ }
+ }
// Make sure this nick is still in the channel
member = members ? members.getByNick(nick) : null;