Custom InteractorStyle for View2DProxy

Hi, I’m trying to implement a custom InteractorStyle based on the InteractorStyleManipulator to enable manipulators to be activated on different key bindings from the provided configurations (namely the spacebar). I’m using a View2DProxy and setting the InteractorStyle through its interactor enables access to manipulators I set manually, but not to the MouseRangeManipulator created by the ViewProxy.

const interactor = viewProxy.getInteractor();
const customInteractorStyle = CustomInteractorStyle.newInstance();
interactor.setInteractorStyle(customInteractorStyle);

const zoomManipulator = vtkMouseCameraTrackballZoomManipulator.newInstance({
  scrollEnabled: true,
  dragEnabled: false,
  alt: true,
});

const panManipulator = vtkMouseCameraTrackballPanManipulator.newInstance({
  dragEnabled: true,
});

customInteractorStyle.addMouseManipulator(zoomManipulator);
customInteractorStyle.addMouseManipulator(panManipulator);

If I create a new MouseRangeManipulator and add it to the customInteractorStyle, it doesn’t have properly configured verticalListener and horizontalListener. I can see that these are set in View2DProxy and that there the rangeManipulator is added to the model’s interactorStyle2D.

How can I access this specific and pre-configured rangeManipulator in my customInteractorStyle? Otherwise, how can I defer to the View2DProxy’s interactorStyle2D for handling the rangeManipulator?

Ideally it should be exposed but for now you can do

const { rangeManipulator } = viewProxy.get('rangeManipulator');