// Methods

        public void SyncGrid(TaskGrid taskGrid)
        {
            if (gridEvent == GridEvent.Completed)
            {
                taskGrid.SetCompleted();
            }
            else if (gridEvent == GridEvent.SetDragging)
            {
                taskGrid.SetDragged(isDragging);
            }
            else if (gridEvent == GridEvent.SetZooming)
            {
                taskGrid.SetZoomed(isZooming);
            }
            else
            {
                var container = taskGrid.At(new Vector2Int((int)containerPosition.x, (int)containerPosition.y));
                if (gridEvent == GridEvent.ItemSelected)
                {
                    var item = container.Elements[itemIndex];
                    taskGrid.SetItemSelected(item, container);
                }
                else if (gridEvent == GridEvent.ItemMoved)
                {
                    taskGrid.SetItemMoved(container);
                }
            }
        }
        protected virtual void TaskGrid_SetDraggingSync(bool isDragging)
        {
            this.isDragging = isDragging;
            gridEvent       = GridEvent.SetDragging;
            SendToServer();

            TaskGrid.SetDragged(isDragging);
        }
        // Methods

        public void SyncGrid(TaskGrid taskGrid)
        {
            taskGrid.SetDragged(translation);
        }