void OnTreeViewButtonReleased (object sender, Gtk.ButtonReleaseEventArgs args)
{
if (!Gtk.Drag.CheckThreshold (tree, clickX, clickY, (int)args.Event.X, (int)args.Event.Y) &&
((args.Event.State & (Gdk.ModifierType.ControlMask | Gdk.ModifierType.ShiftMask)) == 0) &&
tree.Selection.CountSelectedRows () > 1) {
Gtk.TreePath path;
tree.GetPathAtPos ((int)args.Event.X, (int)args.Event.Y, out path);
tree.Selection.UnselectAll ();
tree.Selection.SelectPath (path);
}
}