code: func detachMouseBindWindow(xu *xgbutil.XUtil, evtype int, win xproto.Window) {
  	xu.MousebindsLck.Lock()
  	defer xu.MousebindsLck.Unlock()
  
  	// Since we can't create a full key, loop through all mouse binds
  	// and check if evtype and window match.
  	for key, _ := range xu.Mousebinds {
  		if key.Evtype == evtype && key.Win == win {
  			xu.Mousegrabs[key] -= len(xu.Mousebinds[key])
  			delete(xu.Mousebinds, key)
  		}
  	}
  }
docs: // detachMouseBindWindow removes all callbacks associated with a particular
  // window and event type (either ButtonPress or ButtonRelease)
  // Also decrements the counter in the corresponding 'Mousegrabs' map
  // appropriately.