Allow client-side channel buffer merges, and associated changes.
authorselabnayr <ryanb@stmproducts.com>
Fri, 24 Jun 2016 21:38:04 +0000 (14:38 -0700)
committerManuel Nickschas <sputnick@quassel-irc.org>
Wed, 28 Feb 2018 22:23:00 +0000 (23:23 +0100)
commitfa2b53c2a77d8fcae8e12d358465d6e3786769ca
tree266d94a19a83b9d76ecaa16566f3c91a0567b2f4
parent481f91bd25286721a4f6572c6e71e45e3c0f9c1a
Allow client-side channel buffer merges, and associated changes.

networkmodel.cpp: Mark ChannelBufferItems as being a drop target, to
allow for channel buffer merging.

bufferviewfilter.cpp: Rework BufferViewFilter::flags() to make it more
clear what's going on, and remove the restriction that made
QueryBuffers the only merge-able buffers.

bufferview.cpp: Rework BufferView::dropEvent() to add a bunch of
comments, and allow ChannelBuffers to be merged as well as QueryBuffers.
ChannelBuffers can only be the source for a merge if they are not
currently joined, to prevent UI weirdness of being in a channel but not
having any associated UI elements.

Resolves GH-220.

(cherry picked from commit 6ee26fd6d0a163314002616d277e5444f11b7720)
src/client/networkmodel.cpp
src/uisupport/bufferview.cpp
src/uisupport/bufferviewfilter.cpp