After some experimenting I’ve found that in my actual project with a proper PySide2.QtWidgets.QMainWindow, if I override the resizeEvent method like this then the issue is resolved.
def resizeEvent(self, *args):
picker = vtk.vtkPropPicker()
picker.Pick(0, 0, 0, self.ren)
super().resizeEvent(*args)
where self.ren is a reference to a vtk.vtkRenderer instance.
Any idea why the Pick method forces a proper redraw?
I looked through the source code for vtk.vtkPropPicker but didn’t see anything obvious.