fix fillText and cache width

Note: the bug was hidden

To reproduce : 

````
ctx.fillText("mylongtext1", 10 , 0); 
ctx.fillText("short1", 10 , 50);
ctx.fillText("mylongtext1", 10 , 100); 
//the second filltext "mylongtext1" take the size of the "short1" (so it is cropped !)
````

this commit solve this issue ;)