Johnson is popular but not in voting terms much more popular than Theresa May.
The votes were for the Tories not Johnson and many of them were down to Brexit.
If Johnson hadn’t promised to get it done Nigel Farage was going to destroy the Tories at the election.
Johnson is neither a good or bad performer, he gets away with a lot by being extremely posh which means a lot of working people think he is automatically clever.
Starmer and Labour will win the next election if they have a solid manifesto which appeals to enough people, like Corbyn did in 2017 when he reversed a 20% Tory lead in the space of 4 weeks and nearly pulled it off. Starmer looks safe, I don’t think Labour will be trying to close a gap in the polls next time around.