They have. The Tories have moved very firmly into UKIP territory, which has certainly alienated huge numbers of educated middle-class/professional voters and Labour have wasted the past three years arguing amongst themselves about Brexit and anti-Semitism and lost all momentum (see what I did there). They have just totally failed to be a credible opposition and Corbyn is now the least popular party leader ever. Ever! The goal posts have moved, both main parties are now hugely damaged, which basically means the SNP, LDs and hopefully PC will do very well indeed. The Green voteshere will be hugely up too, but sadly they will be unlikely to translate that to seats.
I know you don’t agree, but elections are always won or lost in the middle-ground as that tends to be where the non-entrenched floating voters live, i.e. the right of Labour and left of the Tory party will define this election, as they always do. Those are the only people that flip position, and now the two main parties are so far apart/damaged they will migrate to Lib Dem, SNP, PC and Green rather than the polar opposite. I’m prepared to bet that for every UKIP/BP bigot Johnson takes he loses another voter from the other side of the party to the LDs. Same logic with Corbyn, he’s just not attracting people from the centre ground and no one trusts him on Brexit as we can all see he doesn’t mean what he says. A ‘conviction politician’ with zero conviction on the issue of the day. That is just not a good look!