Re: DND with a TreeModelFilter



On Wed, 2010-07-07 at 18:49 +0200, Staffan Gimåker wrote:
> The bad news is that
> none of the overridden methods in my tree model are called. And even
> worse, it also hangs my system. Not in a everything freezes way, but
> it
> messes up the input system, the mouse in particular is left totally
> unusable. The "hang" can only be cured with a restart or by killing
> the
> application. To be on the safe side I recommend that you test run it
> by
> doing:
> 
>   ./dndtest & sleep 15 && killall dndtest

Yes, that seems to happen even with the normal ListStore model, ignoring
TreeModelFilter, and ignoring your custom model. It doesn't happen if I
comment out your 
  context->drag_finish(false, false, time);
line. Did you see that code somewhere else?

Note that, at least with a simple ListStore or TreeStore model, you need
to call the base class's method to actually have the default
auto-reordering behaviour, like so:
  Gtk::TreeView::on_drag_data_received(context, x, y, selection_data,
info, time);

But even when using the TreeModelFilter, or your custom TreeModel, I
then don't see the 
  "You must override the default 'drag_data_received'" 
warning that you mentioned. Could you please create a test case that
shows that problem, without the hang (cursor grab)?

Also, what version of GTK+ are you using?




-- 
murrayc murrayc com
www.murrayc.com
www.openismus.com



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]