If you want to make an existing task into a sub-task, it pretty easy to drag it from a project’s list of tasks if the target parent task is also in that target.
But if the target task is not in that project, this becomes a big problem. For example, even if you do a search to get the target parent and the task you want to move into it in one list, you cannot drag anymore because you’re in a list of search results.
One solution I see would be to be able to choose “Move…” from the “…” menu inside the task you want to change into a sub-task and then browse to or otherwise describe the task you want to make that task into a sub-task of.