mirror of
https://github.com/thelounge/thelounge
synced 2024-11-23 04:23:13 +00:00
Send user to lobby of deleted chan when parting from active chan
Instead of always sending them back to the very first lobby on the app. This fixes a bug introduced in recent layout change but does not bring previous behavior back: When closing active channel, user gets sent to lobby instead of previously visited channel.
This commit is contained in:
parent
4920cfeed9
commit
c9d4513b26
1 changed files with 7 additions and 21 deletions
|
@ -393,29 +393,15 @@ $(function() {
|
|||
});
|
||||
|
||||
socket.on("part", function(data) {
|
||||
var id = data.chan;
|
||||
sidebar.find(".chan[data-id='" + id + "']").remove();
|
||||
$("#chan-" + id).remove();
|
||||
var chanMenuItem = sidebar.find(".chan[data-id='" + data.chan + "']");
|
||||
|
||||
var next = null;
|
||||
var highest = -1;
|
||||
chat.find(".chan").each(function() {
|
||||
var self = $(this);
|
||||
var z = parseInt(self.css("z-index"));
|
||||
if (z > highest) {
|
||||
highest = z;
|
||||
next = self;
|
||||
}
|
||||
});
|
||||
|
||||
if (next !== null) {
|
||||
id = next.data("id");
|
||||
sidebar.find("[data-id=" + id + "]").click();
|
||||
} else {
|
||||
sidebar.find(".chan")
|
||||
.eq(0)
|
||||
.click();
|
||||
// When parting from the active channel/query, jump to the network's lobby
|
||||
if (chanMenuItem.hasClass("active")) {
|
||||
chanMenuItem.parent(".network").find(".lobby").click();
|
||||
}
|
||||
|
||||
chanMenuItem.remove();
|
||||
$("#chan-" + data.chan).remove();
|
||||
});
|
||||
|
||||
socket.on("quit", function(data) {
|
||||
|
|
Loading…
Reference in a new issue