Fix possible leaks in CanvasContext HintSessionWrapper

Ensure the mHintSessionFuture is accounted for correctly in the
destructor, and proper destruction is taken in CanvasContext::destroy()
in addition to the destructor.

Bug: b/297230599
Test: manual
Change-Id: Idcbd0f2ba87290f090d693f0a64cb46fe8270b95
Merged-In: Idcbd0f2ba87290f090d693f0a64cb46fe8270b95
(cherry picked from commit ac620f64a32500890007b0b405ca72405d6db41e)
3 files changed