def jump_to_neighbor(self, arrow: QDataDepGraphArrow, jump_to_dst: bool, event_pos: QtCore.QPoint) -> None:
        """
        Handler for double click on a QDataDepGraphArrow, recenters view on the source or destination block
        :param arrow: Calling arrow
        :param jump_to_dst: Whether the jump should be made to the arrow's source or destination node
        """
        jump_block = arrow.edge.dst if jump_to_dst else arrow.edge.src
        jump_block_origin_pos = jump_block.scenePos()

        # Get center position of the block
        jump_block_bottom_right_pos = QtCore.QPoint(
            jump_block_origin_pos.x() + jump_block.width, jump_block_origin_pos.y() + jump_block.height
        )
        jump_block_center_pos = QtCore.QPoint(
            (jump_block_origin_pos.x() + jump_block_bottom_right_pos.x()) // 2,
            (jump_block_origin_pos.y() + jump_block_bottom_right_pos.y()) // 2,
        )
        delta = event_pos - jump_block_center_pos
        self.translate(delta.x(), delta.y())

        Handler for double click on a QDataDepGraphArrow, recenters view on the source or destination block
        :param arrow: Calling arrow
        :param jump_to_dst: Whether the jump should be made to the arrow's source or destination node
        
angrmanagement/ui/widgets/qdatadep_graph.py