Canvas: keyboard support

I wrote it here. :grinning: A Summary for canvas plugin - #2 by KuiyueRO