-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Using TraceView I checked what was taking the CPU time in ScanVox. The SCAudio stuff took about 50%, which is to be expected; next heaviest was a lot of android.view traversal and repainting.
Arranger.listenToMessages() invalidates the whole view whenever a clock tick comes in. It could be made more efficient by only invalidating the Rect in which the old+new clock-cursor lie. However, this could only be done (I think) by refactoring the GUI so that there wasn't one single view, so not sure how easy this is.
An alternative might be to cache the rendered bitmap (i.e. of the whole view with blobs on) so that under a 'normal' clock tick we just paste the whole bitmap in and put the clock cursor on top. (Would need to invalidate that cache on reorient, record, drag, etc)