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, 7 Sep 2016 20:02:30 +0000 (22:02 +0200)
commit6ee26fd6d0a163314002616d277e5444f11b7720
tree910953853a97d4a2edd56341bd404be55dcc97ba
parent809f86daa290cf67f9b30445b26378fff0030672
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.
src/client/networkmodel.cpp
src/uisupport/bufferview.cpp
src/uisupport/bufferviewfilter.cpp