/* * Copyright (c) 2018-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the LICENSE * file in the root directory of this source tree. * */ package com.facebook.sonar.plugins.inspector; /** * Used to collect the path from the root node to the node at point [x, y]. This is used for * creating a node path to the targeting node from the root when performing hit testing. */ public interface Touch { /** * Call this when the path has reached its destination. This should be called from the descriptor * which described the leaf node containing [x, y]. */ void finish(); /** * Continue hit testing in child at the given index. Offseting the touch location to the child's * coordinate system. */ void continueWithOffset(int childIndex, int offsetX, int offsetY); /** @return Whether or not this Touch is contained within the provided bounds. */ boolean containedIn(int l, int t, int r, int b); }