zoom method
Implementation
void zoom(double delta) {
final matrix = transform.value.clone();
final local = toLocal(mousePosition);
matrix.translate(local.dx, local.dy);
matrix.scale(delta, delta);
matrix.translate(-local.dx, -local.dy);
transform.value = matrix;
notifyListeners();
}