Workspacenames:
Damage the text area correctly.
Extract the method used to determine where the text area was
into a separate function and use that to determine where our
damage area should be.
Also fix a few errors that happened on the last frame of animation.
This also fixes the flickering during display.
Other minor code refactoring.
(LP: #1075578, LP: #1162246). Fixes: https://bugs.launchpad.net/bugs/1075578, https://bugs.launchpad.net/bugs/1162246.
Approved by PS Jenkins bot, Sam Spilsbury.