Performing operations on TouchAction objects, Java, android

Hi everyone!
I faced issue during automation a scenario in the appium.
I drag’n’drop element with TouchAction class. The operation has to be performed till the element becomes visible. I’ve tried splitting operations with object like that:

Point draggedElementPoint = myDraggedElement.getLocation();

    TouchAction action = new TouchAction(driver);
    action.press(PointOption.point(draggedElementPoint.x, draggedElementPoint.y))
        .waitAction(WaitOptions.waitOptions(Duration.ofMillis(500)))
        .moveTo(PointOption.point(draggedElementPoint.x, 10))
        .perform();

    new FluentWait<>(driver)
            .withTimeout(Duration.ofMinutes(1))
            .pollingEvery(Duration.ofMillis(200))
            .ignoring(NoSuchElementException.class)
            .until(ExpectedConditions.visibilityOf(elementIWaitingFor)); 

    action.release().perform();

but if chain does not have release() in the end of it, nothing performing.