The widening is done in indent-according-to-mode and brings into view
the whole multi-mode buffer, indeed. Then MMM's indent-line-function is
called, which narrows the buffer to the relevant chunk and then calls
the submode's indent-line-function which hence only sees the part of the
buffer it needs.
Ah, so this assumes that MMM is active in the buffer? If so, can we
widen only if MMM is indeed active? Doing so will I believe minimize
(or even eliminate) the effects on existing behaviors when MMM is not
used.