protected override bool OnButtonReleaseEvent(Gdk.EventButton evnt)
 {
     if (tabActivated)
     {
         tabActivated = false;
         if (item.Status == DockItemStatus.AutoHide)
         {
             item.Status = DockItemStatus.Dockable;
         }
         else
         {
             item.Status = DockItemStatus.AutoHide;
         }
     }
     else if (!evnt.TriggersContextMenu() && evnt.Button == 1)
     {
         frame.DockInPlaceholder(item);
         frame.HidePlaceholder();
         if (GdkWindow != null)
         {
             GdkWindow.Cursor = null;
         }
         frame.Toplevel.KeyPressEvent   -= HeaderKeyPress;
         frame.Toplevel.KeyReleaseEvent -= HeaderKeyRelease;
     }
     tabPressed = false;
     return(base.OnButtonReleaseEvent(evnt));
 }
        protected override bool OnButtonReleaseEvent(Gdk.EventButton evnt)
        {
            if (tabActivated)
            {
                tabActivated = false;
                if (item.Status == DockItemStatus.AutoHide)
                {
                    item.Status = DockItemStatus.Dockable;
                }
                else
                {
                    item.Status = DockItemStatus.AutoHide;
                }
            }
            else if (!evnt.TriggersContextMenu() && evnt.Button == Mouse.LEFT_MOUSE_BUTTON)
            {
                frame.DockInPlaceholder(item);
                frame.HidePlaceholder();
                if (GdkWindow != null)
                {
                    GdkWindow.Cursor = null;
                }
                frame.Toplevel.KeyPressEvent   -= HeaderKeyPress;
                frame.Toplevel.KeyReleaseEvent -= HeaderKeyRelease;

                // sometimes the layout need recalc from scratch, this is a workaround for a layout mistake
                // for testing you can disable this method and show the behaviour after some docking changes
                frame.ReloadCurrentLayout();
            }
            tabPressed = false;
            return(base.OnButtonReleaseEvent(evnt));
        }