I agree, for ppl who get used to use code, the blocks are confusing and frustrating, but on the other way: they limit possible syntax error and compiler problems :-)
The 2nd bullet (a within boundaries) is something I need for a couple of my games (handling touch events and navigate my actor), maybe I implement this as an extension.
If you need this functions frequently, custom blocks are a perfect fit, so you don't have to create an extension for this. The upside of choosing custom blocks is simple: if the language behind changes (major changes in haXe or maybe turning to JavaScript or whatever), the custom blocks will continue to work.