The situation:
I have an activity "A" that is a delegator activity, in simple words, it's only purpose is to call activity "B" (via startActivityForResult()) depending on data it receives. Activity "B" has launchMode set to "singleTask", so it always runs in a single task.
When activity "A" gets started from another task (for example as a share from gallery) it immediately returns ACTION_CANCELLED for activity "B", finishes, and task of activity "B" comes to front (which is an expected behavior).
So, what happens, is that we jump from our Gallery app task, to my activity "B" task. Everything is fine until user presses back. Since we are already in a different task, the back button doesn't lead us back to gallery. It navigates in the stack of activity "B" task.
The question: is there any way to navigate from one task, to previously shown task (navigate from activity "B" to gallery)? Or maybe there is a way to take currently running activity "B" and move it to another task?