cancel
Stops a download that has not started yet. A download already running is not interrupted (its listeners get onComplete/onFail as usual).
Every listener of the dropped request, including callers that joined it while it was waiting, gets onCancelled exactly once. Not onFail: a user "stop" is not a failure and must not show a "download failed" toast.