When I try this here, /hop #chanB while in #chanA, this parts #chanA and closes its window, even if "keep channel open" is enabled, which is what it should be doing. Is this not happening for you?